Acceptance rate · Official GSC API

Programmatic SEO: measure what Google actually accepts

Generating 50,000 pages says nothing about their fate. The real indicator of a programmatic project is its acceptance rate per template, read from Google's official verdicts. IndexProbe measures it, template by template, day after day.

No commitmentNo credit card requiredSearch Console connected in 2 clicks
Index rate per template in IndexProbe: from 12% to 91% across families of generated pages
Every template's acceptance rate, on a single screen. IndexProbe view.

The problem

Thousands of pages generated, how many accepted?

In programmatic SEO, producing 50,000 pages does not mean Google will index 50,000. It can discover them without crawling them, crawl them without indexing them, group them as duplicates, classify them as Soft 404. The number of pages generated is a production metric; the acceptance rate is the outcome metric.

The pipeline stalls silently, and rarely at the same stage from one template to the next. And since 2024, mass rejection is stated policy: Google calls it “scaled content abuse” when many pages are generated “for the primary purpose of manipulating search rankings and not helping users.” The question is no longer whether you can generate pages, but what Google keeps.

The real risk of programmatic SEO is finding out too late: weeks of production, internal linking, and crawl invested in a template Google has been discarding since day one, while the CMS dashboard proudly displays tens of thousands of published pages.

Index statuses of 74,000 generated pages in IndexProbe: 41,220 indexed, 17,760 discovered but not crawled
74,000 generated pages: where each one stands in Google's pipeline. IndexProbe view.

The tooling gap

What your CMS and your guides won't tell you

Your CMS counts published pages. Your crawler validates templates as the site exposes them. And the reference guides to programmatic SEO detail the build, database, templates, launch, but almost all stop there: none says how many pages will get indexed, or how to verify it.

Search Console holds the answer, page by page, but its URL inspector works one URL at a time, and its indexing report cannot be filtered to your list or by template. At programmatic scale, tens of thousands of pages, manual verification does not exist.

IndexProbe extends Search Console: the same official verdicts, fetched through the API, applied to your whole list and aggregated by template. The acceptance rate stops being an intuition: it becomes a metric you track.

The solution

How IndexProbe measures your templates' acceptance

IndexProbe inspects your URL list through the official API, segments the results by template using URL patterns, then tracks the evolution analysis after analysis: each page family's real index rate, the stage where the pipeline stalls, and the effect of every iteration.

1

The real index rate, template by template

Segmentation splits your URLs by pattern, AI-generated or hand-defined, with editable regex rules. Each template then gets its own rate: the statuses-by-segment chart shows on one screen the glossary accepted at 91% and the listings rejected at 12%. That is the map that decides where to invest.

2

Locating the stage where the pipeline stalls

Among the statuses most frequent in programmatic SEO, three tell very different stories. “Discovered - currently not indexed”: Google knows the page but never came, a crawl priority problem. “Crawled - currently not indexed”: Google saw the page and did not keep it, a perceived value problem. Duplicates: Google chose another canonical, a differentiation problem. Three diagnoses, three actions, readable per template.

IndexProbe table filtered on a rejected template: 8,940 pages in Crawled - currently not indexed
A rejected template, isolated with two filters. IndexProbe view.
3

The crawl budget in plain sight

The official documentation is specific: crawl budget becomes a topic from 10,000 pages of frequently changing content, or when “many URLs” sit in “Discovered - currently not indexed,” and duplicates “waste a lot of Google crawling time.” IndexProbe shows the crawl rate per segment, the never-visited pages, and the visit frequency, with no log analysis: you see which templates consume the crawl and which get none.

4

Measuring every template iteration

Enrich a template, re-run the analysis on the same list, re-imported in one click: the Comparison view puts numbers on the result, pages that entered the index, pages still rejected, template by template. You iterate on measurements, not on impressions.

IndexProbe Comparison view after enriching a template: 5,840 pages entered the index, from 34% to 82%
The effect of one template iteration, quantified. IndexProbe view.

Who it serves

Who this measurement serves

Acceptance measurement serves everyone whose model relies on generated pages: growth teams industrializing production, founders betting their acquisition on it, technical SEOs running the diagnosis. The shared question: which template deserves the next investment?

Programmatic and growth teams

Measure each batch's acceptance as soon as it ships, and reallocate production toward the templates Google keeps instead of feeding the ones it discards.

SaaS and marketplace founders

The acceptance rate says whether the acquisition strategy holds, weeks before the traffic curves. One number per template, readable without being an SEO expert.

Technical SEOs

Diagnose by status and by segment: crawl priority, perceived value, or canonicalization, every fix gets its target and its outcome metric.

Honest framing

What IndexProbe does, and does not do

IndexProbe reads the official verdicts of the Search Console API and aggregates them by template. It does not generate pages, does not judge their compliance with Google's policies, and does not crawl your site: it measures what Google decides, page by page, the missing data point of the programmatic loop.

100% official data

The same verdicts as Search Console's URL inspector, non-indexation reason included, with no scraping and no estimates.

Your lists, not a crawl

Sitemap, CSV, paste, or import straight from Search Console, up to 100,000 URLs per analysis. IndexProbe does not discover URLs by following links.

Google's quota, handled for you

Official inspection is capped at 2,000 URLs per day per property, but IndexProbe gets you past that limit. First through the accelerated inspection mode: pages with recent impressions or whose indexing was recently confirmed are counted without consuming that quota, through an API with a separate quota. Then through multi-property aggregation: the quota applies per property, and IndexProbe aggregates the projects of a single domain — with 10 prefix properties created in your Search Console, at least 20,000 URLs are processed every day — more than 140,000 distinct URLs in a week — and often far more thanks to the accelerated mode. At Agency-plan scale, 30 projects × 2,000 URLs per day open up to 60,000 daily inspections — potentially 1.8 million distinct URLs a month, before the accelerated mode even kicks in. Whatever remains spreads automatically over the following days.

The measurement, not the compliance verdict

“Scaled content abuse” is a policy Google enforces; IndexProbe does not certify that a template complies with it. It shows what Google actually does with it, which is often the most honest barometer.

FAQ

Frequently asked questions

How many pages can a programmatic site expect to get indexed?

No universal number exists: it depends on the domain, the perceived value of each template, and the available crawl. The right approach is to measure rather than hope: the acceptance rate per template, tracked over time, tells you precisely where you stand and what is progressing.

Why do so many pages sit in “Discovered - currently not indexed”?

Google knows these URLs but has not come to crawl them: a crawl priority problem, not a content problem. Google's documentation actually cites this status at scale as the signal of a crawl budget to manage, from 10,000 pages of changing content. Internal linking, prioritized sitemaps, and overall site quality move that queue forward.

A whole template comes out as “Crawled - currently not indexed,” what should I do?

Google saw these pages and did not keep them: insufficient differentiation between them, added value judged too low, or too much similarity with what already exists. Enrich the template with unique data and specific content, then re-run an analysis: the Comparison view will show whether Google changes its verdict.

Does the “scaled content abuse” policy concern me?

It targets pages generated at scale “for the primary purpose of manipulating search rankings and not helping users.” The line is the value each page brings. IndexProbe does not judge compliance: it measures real acceptance, which is often its best barometer. A massively rejected template deserves questioning before amplifying.

How do I track 50,000 pages with a quota of 2,000 inspections per day?

Analyses spread automatically over several days, the accelerated inspection mode spares the quota for pages with recent impressions or whose indexing was recently confirmed, and prefix properties multiply the capacity: with 10 properties created in your Search Console, at least 20,000 URLs are processed every day.

How do I measure the effect of a template change?

Re-run an analysis on the same list after the change ships: the Comparison view counts the pages that moved from not indexed to indexed, template by template, with the date of Googlebot's new visit.

Measure what Google actually accepts

The real indicator of programmatic SEO is not the number of pages generated: it is the number of pages Google keeps. You will have it template by template, day after day.

Start the free 10-day trial
No commitmentNo credit card required
Programmatic SEO Indexing: Measure Your Real Index Rate | IndexProbe