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.
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
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 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.
All case studies
Data from many systems, in one place
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
One record of every login journey
6 weeks → 3 hoursinvestigation time
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
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
Insight into £150 billion of government contracts
£150bn+of contracts data, for MPs and senior civil servants
Faster, cleaner data for border enforcement
65%shorter run time
Manual work, automated
Data access for Digital Markets Act compliance
10,000+EssenceMediacom employees on least-privilege access
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
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
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
A resilience proof of concept that won new work