María S. López Oller · measurement spec · v2026.11

María S. López Oller

Senior analytics · data products · data & AI governance

Can you trust this data enough to decide with it, or to let an AI agent act on it?

I've spent 10+ years in analytics making numbers trustworthy. Now I build data products on top of them: AI agents and LLM features, with a person in the loop where it matters. Every number on this page comes with how it was measured and what it can't tell you. Select a highlighted number to see both.

Looking for
Senior and lead roles in analytics, data products, and data and AI governance
Experience
10+ years in analytics across the UK and Spain: retail, travel, UK government, industrial and health tech
Based in
Europe, working remotely. EU passport and UK Settled Status
Contact
Email · CV · LinkedIn · GitHub
Case 01

One set of rules for 60 brands

Ingersoll Rand · Web Data Analyst, Customer Data Analytics Center of Excellence · 2026

Each brand collected web data its own way. I created the Google Tag Manager governance framework for and more than 100 websites, across every region including China.

I led the migration of the consent management platform, including the Consent Mode validation under GDPR and CCPA, and built the business case for Google Analytics 360 by measuring what poor data quality was costing. I also ran BigQuery analysis for the brands' marketing teams and put in place what they asked for.

  • Stack
  • Google Tag Manager
  • Consent Mode v2
  • Chrome DevTools
  • Google Tag Assistant
  • GA4
  • BigQuery
Metrics · how they were measured
  • M160brands

    60 brands and more than 100 websites on 5 Google Tag Manager containers.

    The scope of the work, not a result. I have no before-and-after figure to show for it.

Case 02

Specs developers could build from

UK Government Digital Service and Department for Education · Senior Performance Analyst · 2017–2021

Digital identity is harder to measure than most government services: the UK has no national ID card, so a service has to verify who someone is without one. I worked in several Agile, multidisciplinary teams at once, and created and validated new metrics and KPIs whose data quality I owned.

For my team's analytics work, I wrote the specifications developers built from: user stories and UAT acceptance criteria. With the Head of Privacy, I implemented GDPR across the unit, covering consent and sensitive data handling. Our team automated the recurring reporting with Python and ETL pipelines and cut reporting effort by , with weekly reporting to , 100% on time.

I also trained as a GDS service assessor and sat on Service Standard assessment panels as the performance analyst.

ResourcesBlog post · writing analytics specs developers can build

  • Stack
  • User stories
  • UAT criteria
  • KPI definitions
  • GDPR
  • Python
  • ETL
  • Jira
Metrics · how they were measured
  • M2¾less reporting effort

    Effort spent on the recurring reports, before and after our team automated them with Python and ETL pipelines.

    A team result, not mine alone. The GDPR work has no figure to show.

  • M330+stakeholders, weekly, 100% on time

    Weekly reports delivered to more than 30 stakeholders, none late.

Case 03

One set of numbers for everyone

JD Sports Group · product owner of an 8-project measurement programme · 2021–2024

Marketing and ecommerce didn't trust each other's figures. With the director, I started from a measurement plan and agreed objectives with each area before defining any KPI. I ordered the backlog by dependency and by how many teams each piece unblocked, so no one built a metric that hadn't been agreed. Each delivery came with a working dashboard and training.

New analytics requests grew year on year, with stakeholder satisfaction.

ResourcesPresentation available on request

  • Stack
  • Measurement plan
  • KPI definitions
  • Looker
  • Looker Studio
  • Power BI
  • Jira
Metrics · how they were measured
  • M4+70%new analytics requests

    New requests to the analytics team, year on year.

    It counts demand from the teams and doesn't measure how much they used each dashboard.

  • M590%stakeholder satisfaction

    From the survey run with stakeholders when each project was handed over to business as usual.

Case 04

A checkout that looked broken

JD Sports Group (Sprinter and Sportzone) · Senior Digital & Marketing Data Analyst · 2021–2024

The business wanted the checkout redesigned. Before anyone committed engineering time, I compared the funnel step by step with the retail benchmark, and found a page carrying of checkout traffic that had never been tracked. I fixed that first.

Three teams wanted three different fixes. Marketing wanted Customer Care on video calls, Customer Care wanted chat on product pages, and the evidence pointed at the checkout. I showed each team, step by step, what data existed at each stage and what each option would tell us, and we started with the checkout.

Then we went after the reasons, with a Hotjar survey categorised through the OpenAI API and live chat reasons logged by Customer Care in Salesforce. Payment failures came out as the main cause. After the changes shipped, checkout conversion rose against the pre-launch baseline, and Customer Care kept using the weekly report in its own meetings.

ResourcesBlog post · the full story

  • Stack
  • GA4
  • Google Tag Manager
  • BigQuery
  • SQL
  • Python
  • Hotjar
  • Microsoft Clarity
  • OpenAI API
  • Salesforce
Metrics · how they were measured
  • M640%of checkout traffic

    Share of checkout sessions passing through the sign in, guest or register page, once it could be measured.

  • M7+4%checkout conversion

    Relative lift, against the pre-launch baseline.

    It's a before-and-after comparison, not an A/B test, so it can't isolate seasonality.

Case 05

Keeping a person in the loop

Nutr(IA) Coach · co-founder and AI product manager · 2024 to now, in beta

Nutrition professionals had no AI tool built around their client work. I took the product from concept to beta. I coordinate the team and decide what to build next from interviews with more than ten of them.

We chose to give the AI to nutritionists only, so a professional reviews each recommendation before it reaches a client. The project reached the final phase of the INCOOVA incubator, ventures.

ResourcesBlog post · why we put nutritionists in the loop

  • Stack
  • LLM APIs
  • Vertex AI
  • Google Cloud
  • BigQuery
Metrics · how they were measured
  • M81 of 12ventures in the final phase

    From 168 ideas. Twelve projects reached the final phase; one withdrew, so the press report mentions eleven.

    The product has no paying clients yet.

Case 06

More leads on less budget

aBoatTime and BoatGrid · Head of Digital Marketing · 2015

The target was double the previous year's leads while the budget was being cut. I led a team of four, three marketers and a designer, and ran the marketing relationship with white-label partners. I agreed what counted as a lead, read the results channel by channel and moved the money to what was paying back.

Leads rose in six months with a marketing budget lower, and cost per lead went from .

ResourcesPresentation · PDF, 10 slides

  • Stack
  • Google Analytics
  • Google Ads
  • Facebook Ads
  • Google Display Network
  • Google Trends
  • CRM
Metrics · how they were measured
  • M9+112%leads

    May to October 2015 against the same months of 2014. A lead was a boat request form, a customer call or an online chat. The website alone grew 60%; white-label partners made up the rest.

  • M10−48%marketing budget

    Marketing budget, year on year. Partners took a share of sales with no fixed cost, so their leads didn't add to this budget.

  • M11€9.38cost per lead, from €36.20

    My role was marketing, so I had no booking or revenue data and can't show lead-to-booking conversion. The company no longer exists; the figures come from my 2015 report.

Case 07

A value for every Goldcar Club member

Goldcar Rental (Europcar Group) · Digital Analyst · 2016

Goldcar Club, the car rental loyalty programme, needed a way to tell which members were worth more to the business. With the Chief Digital Officer, I defined for its members.

I built it in Python and SQL, starting from RFM segmentation: how recently, how often and how much each member had spent. Marketing then used it.

In the same role I led the measurement plan across 15 countries.

  • Stack
  • Python
  • SQL
  • RFM
  • Customer lifetime value
Metrics · how they were measured
  • M12CLVper Goldcar Club member

    Defined with the Chief Digital Officer, starting from RFM segmentation of each member's rentals.

    It's a definition, not a result. I have no figure for what it changed in marketing.

Case 08

What goes first in the product grid

JD Sports Group (Sprinter) · Senior Digital & Marketing Data Analyst · 2021–2024

The order of a category page decides which products customers see first. The performance team asked to test new ranking algorithms in Sprinter's internal merchandising tool: one that reordered the grid from what the visitor had been browsing, and one that pushed up products related to those they had looked at.

It was a true A/B test: visitors were split at random into groups that saw each ordering at the same time, so the comparison wasn't skewed by season or campaigns, unlike a before-and-after. Success was revenue per visitor, with clicks on the grid and add-to-cart as early signals.

The hard part was the unit of the split. Splitting by user is the right choice here: the personalised ordering learns from what a visitor browses, so a split by session can show the same person both versions on different visits and blur the difference. But recognising a returning visitor needs a cookie, and on Sprinter that cookie depended on consent, so the technical team couldn't split by user and the test ran by session, against a control group with the current ordering.

How I'd check a test like this today: three arms (the current ordering as control and the two algorithms) need a multivariate test with a correction for multiple comparisons. Clicks and add-to-cart are proportions, so a two-proportion test fits. Revenue per visitor is skewed by a few big baskets, so it needs a test that copes with that, such as Welch's t-test on a large sample or a bootstrap. And with a split by session, the session has to be the unit of analysis too. My free calculator covers the planning, the multivariate set-up, several metrics at once and the risk of picking the wrong winner.

ResourcesA/B test calculator · built by me

Experiments were a team effort, . I worked with the technical team to validate each test before it went live, and I evaluated the results.

Metrics · how they were measured
  • M13~5experiments per quarter

    A/B tests on the Sprinter ecommerce site, run by the team. In the grid test, success was revenue per visitor, with clicks on the grid and add-to-cart as early signals.

    I validated the set-up and evaluated the results; I didn't run the tests alone. Splitting by session means some returning visitors saw both orderings, which shrinks the measured difference. No figure here for which algorithm won.

Case 09

Can the clinic's numbers be trusted?

Personal project · dbt and DuckDB on synthetic data · 2026

A practice project on how I'd structure analytics a team can trust. Fourteen business questions about a fictional clinic, from 30-day readmissions to medication adherence, each answered by its own dbt model on synthetic data. No real patients are involved.

The data comes with defects planted on purpose: duplicated intake forms, a physician with no department, stays discharged before they were admitted and impossible lab values. Bad rows are flagged, not hidden, and each model decides what to exclude. and a data quality scorecard catch the defects: known ones warn without blocking the build, real breaks fail it.

It also works as a data catalogue. Every model has an owner, a data classification and its personal data columns tagged, and the lineage graph runs from the raw data to the reports that use it. A check in the pipeline fails the build if is left undocumented.

How it was built, with AI agents, is in Agentic AI in my own work.

ResourcesGitHub · code, tests and resultsCatalogue and lineage · dbt docsUse case and slides available on request

  • Stack
  • dbt
  • DuckDB
  • SQL
  • Python
  • GitHub Actions
  • dbt docs
Metrics · how they were measured
  • M1450data tests on 26 models

    Schema tests plus checks on the logic, such as the hospital total equalling the sum of its departments. Last build: 81 passed, 3 warnings, 0 errors. The 3 warnings are the planted defects.

    Synthetic data and a practice project, not work for a company.

  • M156 of 10quality rules fail, as designed

    The data quality scorecard: 6 rules fail, 2 are within tolerance and 2 pass.

    The failures are the defects planted in the generator, so this shows the checks work, not a real clinic's data quality.

  • M1634 of 34models and seeds documented and classified

    Checked in the pipeline after every build: each needs a description and a data classification, and each model an owner. The check also lists 25 personal data columns.

    The owners are roles in a fictional clinic, and the reports at the end of the lineage are illustrative.

AI

From trusted data to useful AI

Analytics taught me when a number can be trusted. An AI agent needs the same answer before it acts on data, so that's where I start.

Build

Data products

Nutr(IA) Coach, Case 05: agent architecture and data flows on LLM APIs and Vertex AI.

  • AI agents
  • LLM APIs
  • Vertex AI
Govern

Who checks the AI

A professional reviews every recommendation before it reaches a client. I'm now studying AI Cybersecurity and Governance with Columbia Engineering.

  • Human in the loop
  • AI risk
  • GDPR
  • Columbia, in progress
Use

AI in the analysis

At JD Sports, the OpenAI API categorised open-text survey answers at scale (Case 04). Day to day, AI takes the repetitive tasks and I verify the output before I sign it off.

  • OpenAI API
  • Claude Code
  • Ollama, local models
How I design it · Nutr(IA) Coach
  1. Client data
  2. Can it be trusted?
  3. AI agent drafts
  4. Nutritionist reviews
  5. Client

Agentic AI in my own work

I brief AI agents the way I'd brief a team: a clear task, checks on what comes back, and a person who signs off.

  • Job searchA multi-agent system for my own job searchTen Claude Code agents in four phases: find openings on job sites and company applicant tracking systems, score each one against my criteria, adapt the CV and cover letter for the ones I choose, and prepare interviews. Only openings above a set score go forward, every claim is checked against one file of verified facts, and parallel sessions share a log so they don't overwrite each other's work. The agents draft; nothing is sent without my OK.
  • Case 09The dbt data quality projectBuilt with Claude Code: the agent wrote the models and the tests. The project shows the structure and the quality rules, not code I wrote by hand.
Career

How I got here, version by version

I didn't come to analytics by one road. Each step added a layer that checks a different part of a number. Scroll to watch the build.

  1. Base

    BA Sociology, Market and Social Research · Advanced Technician in Software Development

    How to ask people questions and what an answer can't tell you, plus how software actually collects data.

    • + social research
    • + software
  2. 2010–2013 · Spain

    Social Research Analyst, public sector and academia

    Social research for the public sector and universities, before I moved into digital.

  3. 2013–2014 · UK

    Insights Analyst, Branded3 (SEO agency)

    Client reporting, analytics audits, UX and conversion audits, and A/B testing. My first analytics role.

    • + digital marketing analytics
  4. 2015

    Head of Digital Marketing, aBoatTime and BoatGrid

    My first team: four people, and a budget to move channel by channel. Case 06.

    • + digital leadership
  5. 2016–2017

    MSc Big Data and Business Analytics, Merit

    Data science and big data: models at scale. I've worked in Python with large datasets ever since.

    • + data science and big data
  6. 2016–2017 · Spain and UK

    Digital Analyst, Goldcar · eCommerce Analyst, TUI Group

    A measurement plan across 15 countries and customer lifetime value defined with the Chief Digital Officer at Goldcar (Case 07), then long-haul analytics for three brands at TUI.

  7. 2017–2021 · London

    Senior Performance Analyst, Government Digital Service and Department for Education

    Multidisciplinary Agile teams. I wrote the analytics specs developers built from, owned the data quality of the metrics I defined, implemented GDPR across the unit with the Head of Privacy, and trained as a GDS service assessor. Case 02.

    • + product and Agile
    • + data governance
    • + compliance (GDPR)
  8. 2021 · Spain

    Senior Digital Analyst, Atida Group (DosFarma)

    An online pharmacy with 40,000+ product references. RFM customer segmentation for retention and targeting.

  9. 2021–2024 · Spain

    Senior Digital & Marketing Data Analyst, JD Sports Group

    Product owner of an 8-project measurement programme: one agreed set of KPIs before any dashboard. Case 04, Case 03 and Case 08.

    • product owner
    • KPI governance
    • LLM text classification
  10. 2024 to now

    Co-founder and AI Product Manager, Nutr(IA) Coach

    An AI product taken from concept to beta. I designed the agent architecture and data flows, and a professional reviews every recommendation. Case 05.

    • + data products and agents
    • human in the loop
  11. 2025

    Agentic AI

    AI agents in Nutr(IA) Coach and agentic tools in my daily work, such as Claude Code and local models with Ollama (how I use them). Alongside, Google Cloud's Gen AI Leader learning path and a 280-hour course in applied AI for business.

    • + agentic AI
  12. 2025

    Professional Certificate in Teaching Vocational Training (SSCE0110)

    Qualified as a trainer. Training was already part of every dashboard I handed over; now I can teach it formally.

    • + training others
  13. 2026

    Web Data Analyst, Customer Data Analytics Center of Excellence, Ingersoll Rand

    Governance at scale: tag and consent rules for 60 brands and 100+ websites. Case 01.

    • governance at scale
  14. 2026 · in progress

    AI governance

    AI Cybersecurity and Governance with Columbia Engineering: the rules for deciding what an AI is allowed to act on.

    • + AI governance
Output

Sociology taught me to find out what stakeholders actually need, which isn't always what they ask for. My grounding in software development and data lets me turn that into something the technical team can build. I work as the bridge between the two.

Together they answer one question: can you trust this data enough to decide with it, or to let an AI agent act on it?

Leadership

How I lead

I've managed a team once. Most of my leadership has been without line reports: getting teams that don't report to me to agree on what to measure.

  • aBoatTime · 2015Line managementLed a team of four, three marketers and a designer, for nine months, after nine months managing an intern.
  • JD Sports · 2021–2024Leading a programme without line reportsProduct owner of an 8-project measurement programme. I agreed objectives with each area before any KPI was defined, and worked with a PMO project manager across marketing, product, technology and agency teams.
  • UK GDSAssessing other teams' servicesTrained as a GDS service assessor and sat on Service Standard assessment panels as the performance analyst.
  • GoldcarSupporting juniorsThe senior person the interns came to.
Built and written

Things I've built and written

Stack and training

Tools and training

Measurement and governance

  • KPI definition
  • GA4
  • Google Analytics 360
  • Matomo
  • Piwik
  • Google Tag Manager
  • Consent management
  • GDPR
  • CCPA

Analysis and dashboards

  • SQL
  • BigQuery
  • Python
  • A/B testing
  • RFM
  • Customer lifetime value
  • Machine learning
  • scikit-learn
  • Surveys and NPS
  • Looker Studio
  • Looker
  • Power BI
  • Tableau

AI

  • LLM APIs
  • Vertex AI
  • Human-in-the-loop design
  • Explainable AI (SHAP)

Ways of working

  • Agile
  • Product ownership
  • Backlog prioritisation
  • Jira
  • Professional Scrum Master I
  • In progressAI Cybersecurity and GovernanceColumbia Engineering (Columbia Plus), 2026.
  • MSc · 2016–2017Big Data and Business AnalyticsTelefónica and UEMC. Merit.
  • DegreeBA SociologyMarket and Social Research.
  • DiplomaAdvanced Technician in Software DevelopmentTécnico Superior en Desarrollo de Aplicaciones Informáticas.
  • 2025Professional Certificate in Teaching Vocational TrainingSSCE0110, train-the-trainer.
  • 2024Designing and Building AI Products and ServicesMIT xPRO.
  • CertificatesGoogle Business Intelligence · Professional Scrum Master ISimmer GA4 course.