Skip to content
SealMetrics
AI & Analytics

Self-service analytics for marketing teams: how SealMetrics does it

The reporting queue disappears. The definition of “revenue” does not.

8 min readBy Rafa Jiménez

Self-service analytics means a marketing team gets a correct answer to a business question without opening a ticket for the data team. At SealMetrics it works in three moves: the platform measures 100% of traffic without cookies or consent, it exposes that data to an AI agent as 47 named, read-only tools instead of raw SQL, and the customer chooses whether that agent runs on their own model key (BYOK) or on an isolated private instance.

Most self-service analytics projects fail before the AI is even installed. They fail on the data.

What has to be true of the data before an AI agent can answer anything?

The data has to be complete, and it has to have one definition per metric.

Completeness is where consent-based analytics breaks. In the EU, cookie-based tools only measure the share of visitors who accept the banner. SealMetrics measures every visit and every sale with cookieless, first-party measurement and without consent, which removes the 40–60% blind spot that consent-gated setups carry.

This is not a reporting detail. An agent that reads a partial dataset does not say “I only have 13% of your traffic.” It answers confidently with the 13% it has. The output is well formatted, precise-looking and wrong. Bad data plus a good model produces false precision faster than a spreadsheet ever could — and the arithmetic of how that 13% happens is worked through in why GA4 ends up showing a sliver of EU traffic.

Single definition is the second condition. If three tables in a warehouse each hold a column called revenue, an agent will pick one. It will not tell you it guessed. SealMetrics ships one canonical definition per business concept, so “conversions” resolves to the same number in the dashboard, in the API, in BigQuery and in the agent's answer.

PreconditionConsent-gated stack (GA4 + banner)SealMetrics
Share of EU traffic measuredConsented visitors only100% of human traffic
Metric definitionsMultiple tables, multiple revenue columnsOne canonical definition per concept
Agent access methodRaw SQL over the warehouse47 named, read-only tools
Bot and AI-agent trafficMixed into human sessionsDetected and reported separately
Data residencyVaries by configurationEU-hosted, Dublin

Why do most self-service analytics projects fail?

Because they connect a language model directly to a data warehouse and call it self-service.

An open warehouse gives the model a search space of thousands of tables and millions of column combinations. Three failure modes follow. The model cannot map a business phrase to a specific entity — “active users” has four defensible meanings and the model picks one silently. The model works from a schema that changed last quarter and no longer matches the transformation graph. Or the correct table exists, and the model never finds it.

SealMetrics removes the search space instead of trying to teach the model to navigate it. The agent does not write SQL. It calls named functions: get_top_channels, get_funnel, get_conversions, get_campaigns, get_bot_stats. Each function maps one business concept to one canonical metric. There is no second revenue column to guess between. The full architecture behind that constraint — and why it has four layers rather than one — is covered in what it takes to make self-service analytics actually work.

What can a marketing team actually ask?

The 47 tools cover sites, traffic and campaigns, page performance and content groups, conversions and microconversions, audience segmentation by geography, device, browser and OS, event-level raw data (capped at 31-day ranges), funnel analysis, bot detection, custom properties and segments, alerts and webhooks, and tracking code generation.

In practice that turns into questions a CMO asks out loud:

Question asked in plain languageWhat the agent callsWhat comes back
Why did conversions drop last week?Overview, channels, campaigns, funnel, bot statsThe channel and step where the drop started, with the delta
Which campaign brings the best customers, not the most clicks?Campaigns, conversions, microconversionsCampaign ranking by converted revenue, not by sessions
Where am I losing money?Landing pages, funnel, terms, top sourcesSpend against measured conversions per source
Is my tracking set up correctly?Setup status, verify setup, microconversion typesThe events that exist versus the events that should
How did Germany do versus France in Q2?Countries, segments, conversionsBoth markets on the same canonical definition

The agent answers in the surface the team already uses — Claude Desktop, Claude Code, or any MCP-compatible assistant. Nobody learns a new BI tool.

Is the data safe if an AI agent reads it?

This is the objection that decides the deal, so SealMetrics answers it with architecture rather than a promise. There are three deployment shapes, and the customer picks one.

DeploymentWho holds the model keyWhere inference runsPlan
BYOK — bring your own keyThe customer, on their own Anthropic, OpenAI or Gemini accountThe customer's own model provider accountGrowth
Managed Private AINo key needed · 5M tokens includedSealMetrics-managed private instanceScale
Exclusive Private AINo key neededDedicated, non-shared instance with isolated processingEnterprise

BYOK matters for a specific reason. The model provider relationship stays with the customer, which means their existing DPA, their retention settings and their regional routing apply unchanged. Legal does not have to approve a new subprocessor to turn analytics into a conversation. For teams that would rather not manage a key at all, Scale ships a managed private instance; Enterprise ships one that is exclusive and isolated. The trade-off between the two is laid out in private AI versus bring your own key.

Two more constraints hold regardless of tier. The MCP server runs locally and stores no analytics data on the machine, authenticating over an X-API-Key header the customer generates from their own dashboard. And the data underneath was never personal data to begin with — SealMetrics is consentless by architecture, EU-hosted in Dublin.

What does this actually save?

Two things: the wait, and the reconciliation.

The wait is the reporting queue. Every “can you pull the numbers for the board deck” request that used to cost an analyst half a day now resolves in the time it takes to type the question. Data is real-time under two minutes, so the answer is not yesterday's.

The reconciliation is the meeting nobody schedules and everybody attends: the one where marketing's number, finance's number and Shopify's number disagree and the first forty minutes go to deciding which one is real. Palladium Hotel Group found that 40% of its inbound traffic carried no source or medium attribution at all in the previous stack; Dreamplace Hotels measures roughly 30% more traffic than Google Analytics reports. When the analytics number and the CRM number converge, the argument ends and the meeting is about the decision instead.

How does it scale as we add sites and markets?

The cost of the tenth site is the marginal cost of one more question, not one more analyst.

The free Agentic Package covers unlimited sites, users and accounts up to 1M human events in total — a one-time allowance, not a monthly one — and it is provisioned by the agent itself: Claude or Codex creates the account, generates the tracking pixel and builds the first report from a single prompt. Paid tiers keep unlimited sites and add MCP plus BigQuery export and full API access. AI agent traffic is tracked separately and does not count against the event limit.

That is what makes growth scalable rather than linear. A team that adds Germany, France and Italy does not add three reporting backlogs. It adds three sites to the same canonical model and asks the same questions with a country filter — with revenue attributed last-click, in aggregate, on the same definition in every market.

How do I start?

Start with one property and the free tier. Provision it through Claude or Codex, let the agent generate the pixel, verify the setup with verify_setup, and ask the three questions your team asks most often. Compare the answers to what your current stack reports. The gap between the two numbers is the size of the problem.

Size the blind spot before you size the licence.

The free Agentic Package runs the whole loop on your own traffic up to 1M human events. If you would rather quantify the gap first, the calculator does it from your consent rate and your paid spend.

Sources and limitations

Figures in this article come from SealMetrics published material: the product and customer figures from sealmetrics.com, the tool inventory and authentication model from docs.sealmetrics.com, and the architectural rationale from What It Takes to Make Self-Service Analytics Actually Work. Customer figures (Palladium, Dreamplace) are single-account results and are not presented as an average across the customer base.

Questions teams ask

What is self-service analytics?

Self-service analytics is when a business user gets a correct answer to a data question without a data analyst in the loop. It requires three things: complete data, one definition per metric, and a constrained interface the user can query in plain language.

Can ChatGPT or Claude read my analytics data?

Yes, through an MCP server. SealMetrics exposes 47 named read-only tools to any MCP-compatible assistant, including Claude Desktop, Claude Code, ChatGPT and Cursor. The assistant calls named functions rather than writing SQL against a warehouse.

What is BYOK in analytics?

BYOK means bring your own key. The customer connects their own Anthropic, OpenAI or Gemini account, so inference runs under their existing contract, retention settings and data processing agreement. SealMetrics offers BYOK from the Growth plan.

Is AI analytics GDPR compliant?

It depends on what the AI reads. SealMetrics is consentless by architecture and EU-hosted in Dublin, so the underlying data was never personal data. The MCP server runs locally and stores no analytics data on the machine, authenticating over an API key the customer generates from their own dashboard.

Do I need a data team to use it?

No. The free Agentic Package is provisioned by the agent itself — account, tracking pixel and first report from a single prompt in Claude or Codex, with documentation only and no implementation project.

How is this different from asking GA4's AI features?

The difference is the input, not the model. GA4 answers from consented traffic only. SealMetrics answers from 100% of human traffic, which is why its numbers reconcile with Shopify and the CRM instead of sitting 40-60% below them.

Related reading

Go deeper