Open source · Apache-2.0 · MCP

Make your site AI-readable,
citable — and measure your progress.

GTM Growth connects GA4, Google Tag Manager, Search Console and AI-search readiness in one MCP server. Start with a free read of your address; get the full audit, the fixes and the measurement plan when you want them done.

Built for visibility across
  • ChatGPT
  • Claude
  • Gemini
  • Perplexity
  • Copilot

No signup. The first read scores your URL instantly, then renders SEO, GA4, Search Console and sitemap insights.

Example of a full report — opendpe.net, 71/100 → · Download the PDF (50 kB)

One public audit, re-runnable — opendpe.net, 2 Nov 2026

  • 71/100GEO score100 once the 16 fixes ship
  • 27/27AI crawlers allowedzero blocked, five citation bots
  • 3/5engines readyAIO 100 · ChatGPT 100
  • 0/4Entity linkssameAs pillars, worth 7 points
  • 96MCP tools
  • 11GEO checks
  • 22GTM tools
  • 0vendor lock-in

Free tools

Four free tools, before any signup

The free read measures your page, its robots.txt and its sitemap, then renders SEO, GA4, Search Console and visual sitemap data. No account, no mail client.

SEO tables

Title and description lengths, canonical, robots meta, H1–H3 outline, word count, internal and external links, images without alt, JSON-LD blocks and types. Measured on the HTML you serve — never estimated.

free read · /api/free-read

GA4 report

Measurement IDs, dead Universal Analytics tags, container count, duplicated loaders, dataLayer and consent mode — everything that decides whether the sessions you report actually exist.

free read · /api/free-read

Search Console report

Verification tag, robots.txt directives, sitemap coverage and lastmod share, indexability, canonical host — what Google needs before it can index the page at all.

free read · /api/free-read

Visual sitemap

A SlickMap-style view of URLs declared in the XML sitemap, with page count, hierarchy depth, lastmod coverage and section distribution. It reads the sitemap; it does not invent traffic.

free read · sitemap analytics

Sessions and clicks need a connected property. Until one is connected, those two reports are labelled sample — nothing here is estimated silently.

The toolkit

Seven jobs behind the tables

Read-only by default, deterministic, covered by tests. Every answer arrives with the evidence behind it — including when the answer is no.

GEO audit

Score a page 0–100 across eight categories — robots, llms.txt, schema, meta, content, brand, signals, discovery — with the fix order computed from recoverable points.

geo_audit

Citability

A second score that asks whether a passage would be quoted: statistics, quotations, structure, question headings, answer-first writing, authorship, freshness.

geo_citability

llms.txt, generated and checked

Build the file from your sitemap, then catch drift after every deploy: links that left the sitemap, pages never added, and how many links still resolve.

geo_generate_llms_txt · geo_llms_drift

Structured data

Rich JSON-LD templates for WebSite, Organization, FAQ, Article, Product and LocalBusiness — five-plus attributes, not generic name-and-url markup.

geo_generate_schema

GTM installation

Verify the head loader, the noscript fallback, dataLayer order, default consent and duplicate containers — on staging before it reaches production.

gtm_audit_installation

IndexNow & Bing

Announce a changed URL to Bing, Yandex, Seznam and Naver in one POST — key file verified first, every response code explained. Google does not take part.

indexnow_submit · indexnow_verify

Positioning

Compare your page with named competitors: the vocabulary everyone shares, themes only you own, themes only they cover. Copy only — no traffic or ranking data.

geo_positioning

Analysis console

Every source in one place, and one decision out of it

Search Console, GA4, the GEO audit, citability and IndexNow, side by side. The console reads the sample audit of opendpe.net — the same payload the MCP tools return.

opendpe.net Overview

All engines Sample · 2 Nov 2026
GEO score
71/100
+29projected
Citability
53/100
+47to the max
IndexNow
35/100
+654 checks to fix
Engines ready
3/5
+2AIO, ChatGPT, Copilot
Score trajectory to the fix plan71 → 100 · one point per fix
100 90 80 70
now+6 fixes+16 fixes

Where the points are

  • robots.txt 15/18
  • llms.txt 12/18
  • Schema 13/16
  • Meta tags 14/14
  • Content 11/12
  • Brand & entity 3/10
  • Signals 3/6
  • AI discovery 0/6

GEO, citability and IndexNow values are measured on opendpe.net. Search rows are illustrative until a property is connected — the console never presents a sample as yours.

Measurement

GTM, measured end to end

Traffic you cannot see is traffic you cannot defend. The same server audits the container that produces the numbers.

Install

Page-level checks for the loader, noscript, dataLayer order and consent — plus a snippet generator that refuses malformed container IDs.

Inspect

GA4 configuration and event tags, triggers, variables, event parameters, duplicate tags and reverse lookups: what fires on a trigger, what uses a variable.

Prove

Cross-reference GTM events against events actually received in GA4, validate ecommerce payloads against the official schema, and gate the deploy on drift.

terminal
npm run cli -- gtm-audit --url https://acme.com
npm run cli -- geo-audit --url https://acme.com
npm run cli -- geo-drift --url https://acme.com
npm run cli -- geo-positioning --url https://acme.com \
  --competitors https://a.com,https://b.com
npm run cli -- geo-report --url https://acme.com --out report.pdf

Proof

Built in the open, measured in public

Every number below comes from the repository you can run yourself — and from a live audit you can re-run.

  • 96MCP tools
  • 205tests passing
  • 11GEO checks
  • 22GTM tools
  • 5AI platforms mapped
  • Apache-2.0licence

Read-only by default · CI runs typecheck, lint, 205 tests, build, CLI smoke and site checks on every push · see the runs

Plans

Start free. Go deep when it pays.

Free read

€0

  • URL hygiene score, 10 checks
  • SEO tables — metadata, headings, links, images, JSON-LD
  • GA4 report — tag IDs, loaders, dataLayer, consent mode
  • Search Console report — verification, sitemap coverage, indexability
  • The full audit checklist
  • Open-source server you can run locally
  • CLI and MCP access, Apache-2.0
Run the read

Next step

Get the full report

Tell us where to send it. We reply with the audit, the three fixes that move the score most, and what the GTM side needs before you can trust the numbers.

Sent directly from this page — no mail client opens. We reply within one business day.

FAQ

The questions that decide the engagement

Is the free read a real audit?

Two layers. The URL score runs in your browser: HTTPS, hostname shape, path depth, tracking parameters, fragments, length, file extensions — that part never fetches anything. The SEO, GA4 and Search Console tables are measured server-side by /api/free-read, on the page, its robots.txt and its sitemap. When that API is not connected, the tables are labelled sample; npm run cli -- geo-free-read --url … gives the same rows locally.

What is GEO, and how is it different from SEO?

SEO optimises for a ranked list of links. GEO optimises for being quoted inside an answer: an engine has to fetch the page, parse it, resolve the entity and find a passage worth citing. They overlap — crawler access, structure, metadata — but a page can rank well and still be uncitable, which is why citability is scored separately here.

How long before AI engines cite me?

Nobody can promise a date, and any tool that does is guessing. What can be measured: whether crawlers are allowed, whether the entity resolves, whether a passage is quotable, and how fast a change is announced (IndexNow). The report gives you those, plus the projected score once the fixes ship.

Does this guarantee AI engines will cite me?

No, and any tool claiming that is guessing. The audit measures readiness: crawler access, llms.txt, structured data, citability, entity signals and discovery endpoints. It never queries ChatGPT, Claude or Perplexity, so it cannot claim an engine cites you.

Do you need access to my Google account?

Only for the GA4 and Tag Manager audits. Those use a service account invited to your properties with viewer access. Every write — tags, sitemaps, Indexing API, Measurement Protocol secrets — is disabled by default and requires a flag plus confirm=true.

What happens after I submit the form?

You get the full audit for the URL you entered, the three fixes with the highest recoverable points, and a short list of tracking gaps that would make the numbers unreliable. If it is not a fit, you still keep the audit.

Is it really open source?

Yes — Apache-2.0. The GEO rubric is adapted from the MIT-licensed geo-optimizer-skill model, credited in the docs. The server, CLI, site and tests are in the same repository.

Built on an MIT toolkit

Five GEO tools, one server, no reinvention

GeoSuite publishes a zero-dependency GEO toolkit under MIT. Three of its checks already existed here; the two missing ones are now native, so a single audit covers the whole set.

AI Crawl Check

Which AI crawlers robots.txt allows, per bot and tier.

native · geo_crawler_access

llms.txt Generator

Build the index from a sitemap, then catch drift.

native · geo_generate_llms_txt

Schema Templates

Copy-paste JSON-LD for six types, validated on the way out.

native · geo_generate_schema

Sitemap Builder

Crawl a site that ships without one, honouring robots.txt.

new · geo_sitemap_build

Poppy Check

/.well-known/poppy.json — the file a personal agent reads to find a company and sign in.

new · poppy_check · poppy_generate

Ported from TryGeoSuite/geo-toolkit and poppy-json, MIT © Matteo Perino and GeoSuite. The checks are theirs; the implementation here runs inside the same server as the rest of the audit.