Previous work

Case studies

Mithril is new. Before we started it, we built data products inside these organisations. Here is what we did, and what changed.

  • JustPark
  • Meta
  • EssenceMediacom
  • World of Books
  • Cabinet Office
  • Capgemini Invent
  • Home Office
  • HSBC

Featured

Five case studies in depth

Pick one to see the challenge and the result. Each one has its own page.

5 featured case studies

6 weeks → 3 hoursinvestigation time

Social media2025 to 2026

One record of every login journey

Login data for Facebook and Instagram sat in more than 19 different sources. Nobody could calculate a true end-to-end login success rate, and each investigation needed its own joins.

  • Data modelling
  • Alerting
The result

The first true end-to-end login success rates across surfaces. Investigation time fell from 6 weeks to 3 hours, and faster responses to incidents protect more than £1.5 million of revenue each year.

Read the case study

All case studies

Data from many systems, in one place

  • JustPark · Parking app · 2026

    A single view of every booking

    96%of bookings with no attribution now have one

    Read the story
    The challenge
    JustPark had no campaign attribution for its bookings. The team could not see which campaigns and platforms performed best, how each campaign ran against its budget, or the exact effect of its marketing.
    What we did
    We led the discovery, design, build and rollout of a single view of each booking. It joins media delivery, spend and campaign data with first-party session and user data, through new ways to resolve identity. We worked with engineering, marketing and revenue operations.
    The result
    Attribution for 96% of the bookings that had none. One source of truth for booking attribution, for campaign reports and customer segments.
    • BigQuery
    • dbt
    • Looker
    • Google Cloud
    • Python
    • SQL
    • Semantic modelling
  • Meta · Social media · 2025 to 2026

    One record of every login journey

    6 weeks → 3 hoursinvestigation time

  • World of Books · Online retail · 2024

    One source of truth for every product

    Read the story
    The challenge
    The website pulled its product information together from many different sources, including Commercetools and an internal database.
    What we did
    We joined the sources into one source of truth for all product information: one BigQuery table model, built with dbt Cloud, that the website reads through an API.
    The result
    The website presents every product from one table model.
    • BigQuery
    • dbt Cloud
    • Python
    • Airflow
  • World of Books · Online retail · 2024

    Moving customers from Commercetools to Shopify

    50M+orders moved, with prices and history

    Read the story
    The challenge
    World of Books moved to Shopify for version 2 of its website. Its customer and order data had to move from Commercetools first.
    What we did
    We built a producer–consumer pipeline in Python and Google Cloud Storage. It moved customer profiles, multi-currency order history, pricing logic and event history.
    The result
    More than 10 million customer profiles and more than 50 million orders moved. A/B tests across the business and its regions on Shopify became possible, and version 2 of the website is live on Shopify.
    • Python
    • Airflow
    • Google Cloud Storage
    • SFTP
    • Shopify API
    • Data structures and algorithms

Central government

Manual work, automated

  • EssenceMediacom, for Google · Media agency · 2022 to 2025

    Data access for Digital Markets Act compliance

    10,000+EssenceMediacom employees on least-privilege access

  • EssenceMediacom, for Google · Media agency · 2022 to 2025

    An advertising analytics pipeline for Google Chrome

    80%less time to fix an error

    Read the story
    The challenge
    There was no pipeline. The marketing team handled the advertising data from more than 12 ad platforms by hand.
    What we did
    We built an end-to-end ETL pipeline in BigQuery and dbt, with automated tests, alerts and monitoring.
    The result
    The time to fix an error fell by 80%, with 99.5% accuracy from source to destination.
    • BigQuery
    • dbt
    • Python
    • Google Cloud Storage

AI on good data

  • Meta · Social media · 2025 to 2026

    Finding phished accounts across Facebook and Instagram

    60,000+credential-theft incidents found each day

    Read the story
    The challenge
    Phishing was growing on Facebook and Instagram. There was no infrastructure and no metrics to identify the phished population correctly.
    What we did
    We owned the architecture and delivery of a phishing analytics data product for both apps, with large language models. A separate pipeline of leading indicators, with anomaly and drift detection, shows changes in the figures early.
    The result
    More than 5,000 phished users and more than 60,000 credential-theft incidents found each day. The product supported an increase of about 800,000 in two measures of monthly active users: accounts not held at a security check, and accounts with no sign of abuse.
    • SQL
    • Presto
    • Spark
    • Dataswarm
    • Daiquery
    • M360
    • NEST
    • Dashboards
    • Large language models
  • Meta · Social media · 2025 to 2026

    An AI agent that answers questions about phishing

    12 stepsin the investigation protocol

    Read the story
    The challenge
    Questions about phishing and account compromise had to go to an engineer.
    What we did
    We designed and shipped a 12-step investigation protocol for an account security agent, for the phishing problem. A structured metadata layer links each metric, task, pipeline and owner, so the agent can query lineage, definitions and runbooks.
    The result
    People now ask the agent the questions about phishing and compromise that used to need an engineer.
    • AI agents
    • Semantic modelling
    • Metadata layer
    • Dashboards
  • HSBC, through Capgemini Invent · Banking · 2020 to 2022

    A resilience proof of concept that won new work