EF Education First scores dbt models on cost and value with a Cortex Agent

EF Education First built a scoring system on dbt and Snowflake that rates every model by cost and usage, and wrapped it in a Snowflake Cortex Agent that its domain teams can query themselves. Adrien Ledoux, who leads the company's data platform team, described the project at a dbt Summit 2026 breakout session.
- EF Education First scores every dbt model and test on execution time, credits consumed, and rows processed per second.
- Models are normalized by percentile rank against similarly sized peers and sorted into three tiers.
- A Snowflake Cortex Agent on a governed semantic layer lets domain teams query the scores.
- Some heavy pipelines gained 40 percent efficiency, and one large model fell from 10 minutes to 2 minutes.
- Adoption of the agent remains the biggest ongoing challenge, according to Adrien Ledoux.
From fixed spend to consumption costs
EF Education First sends thousands of students on tours around the world every year, and its mission is "opening the world through education," according to the dbt Labs write-up of the session. Ledoux's platform team supports a data mesh in which domain teams each own their marts and business logic.
The problem began when EF moved from a legacy SQL Server setup to Snowflake. On SQL Server, spend was fixed and the real constraint was throughput. Snowflake's consumption-based compute, split into separate warehouses per domain team, let teams run pipelines on their own schedules. It also meant every dbt model run carried a real cost.
Ledoux's team became responsible for allocating that spend fairly across a decentralized organization. Three symptoms appeared quickly: costs climbing steadily, some pipelines with barely any downstream usage, and a handful of expensive projects nobody was clearly accountable for.
How the scoring system works
The team scores every dbt model and test using execution time, credits consumed, and rows processed per second. Scores are normalized as a percentile rank against similarly sized peer models, so a large fact table is not penalized unfairly against a small one.
Models then fall into three tiers:
- Top tier: left alone and highlighted to the rest of the company as success stories.
- Mid tier: reviewed periodically.
- Bottom tier: triggers a review conversation with the owning domain team.
The data comes from Snowflake account usage, transformed with a Kimball-style approach, plus a custom pipeline that ingests Power BI activity logs. Ledoux noted that Fivetran shipped a native Power BI connector that could replace that custom ingestion going forward. These sources feed a governed semantic layer in Snowflake, wrapped in a Cortex Agent. The agent is enriched with context such as domain, user, and team, so it already knows who is asking and what they are responsible for.
Results and the adoption challenge
According to the session summary, some of EF's heaviest pipelines saw a 40 percent efficiency improvement, and one of the biggest models dropped from 10 minutes to 2 minutes. Some Power BI workspaces saw up to 70 percent of reports deleted once low usage became visible.
Ledoux was candid that the biggest ongoing challenge is adoption of the agent itself. Building it also pushed his data engineers to work more like analytics engineers and exposed gaps in their own CI/CD. He drew a distinction between usage and value: a report checked a thousand times is not necessarily valuable, while a report checked once a week by the right person can be.
What comes next
The team is building a reverse ETL loop that pushes actionable insights into Salesforce, assigns them to people, and re-ingests the outcome to close the feedback loop. Other planned steps include:
- Making the agent more autonomous by feeding it Confluence documentation through Fivetran.
- Connecting it to Snowflake workflows that can automatically open Jira tickets for domain teams.
- Sending regular usage digests directly to domain teams who might not otherwise know the tool exists.
Ledoux's closing point doubled as a warning: a good technical idea does not adopt itself, and leaders still have to invest the time in change management. For other organizations running decentralized data teams on consumption-priced platforms, the EF case shows one way to make cost visible to the people who own the pipelines, though the figures are the company's own account of its results.


