800 Pages, 120 Indexed: How to Actually Fix It
An r/SideProject post: 15% indexation. Honest fix: GSC URL Inspection audit + Scavio topical density + per-cluster rewrite. No instant tool.
An r/SideProject post: I published ~800 SEO pages for a side project. After a month, Google had indexed only 120. 15% indexation rate. The instinct is to find a tool that submits faster. The actual fix is honest content quality + topical density work, per cluster, against the diagnosis Google is giving you in Search Console.
Why Indexing API doesn't apply
Google's Indexing API is gated to two specific page types: job postings and livestream events. Everything else is officially out of scope. Tools that claim to push arbitrary content via Indexing API are either misleading or violating policy. Don't waste cycles here.
What "15% indexation" actually means
Google saw the pages. Crawled most of them. Decided not to index 85%. That's a content quality signal, not a technical one. Submission tools don't fix this; they're asking Google to re-evaluate the same content Google already chose not to index.
The diagnostic step everyone skips
Pull GSC URL Inspection on a sample. Tag each URL as: indexed, discovered-not-indexed, crawled-not- indexed, excluded. Sample 50 of each cohort. Diff the content. The differences are almost always visible:
- Not-indexed pages have <300 unique words.
- Templates are near-duplicate (only the variable phrase changes).
- One internal link in, one out.
- No external citations.
- No FAQs, no "why this matters", no opinionated content.
The Scavio topical-density audit per cluster
For each cluster of pages (typically grouped by keyword theme), run:
import requests, os
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}
def topical_audit(topic):
queries = [
f'site:competitor1.com {topic}',
f'site:competitor2.com {topic}',
f'site:competitor3.com {topic}',
f'reddit r/relevant {topic} question 2026',
]
out = []
for q in queries:
r = requests.post(
'https://api.scavio.dev/api/v1/search',
headers=H,
json={'query': q, 'include_ai_overview': True}
).json()
out.append({
'query': q,
'top_results': r.get('organic_results', [])[:5],
'ai_overview_cites': r.get('ai_overview', {}).get('citations', []),
})
return outThe output tells you what depth other ranking pages actually cover, what real users ask in community threads, and what the AI Overview surfaces as the canonical answer. Your rewrite needs to cover that depth or Google has no reason to choose your page over the existing options.
The per-cluster rewrite recipe
- Read the topical-density output. Map the depth competitors cover.
- Rewrite each page to genuinely cover that depth (typically 2-3x word count, with structure).
- Add 4-6 internal links per page (across the cluster).
- Add 2-3 external citations to authoritative sources.
- Add FAQs targeting real questions from the Reddit/Scavio output.
- GSC: Request Indexing on each rewritten URL.
Time and cost per cluster
2-4 hours per 50-page cluster (rewrite is real work). Per-cluster Scavio cost: ~$1-2 in API. Across 16 clusters of 50 = 40-80 hours total work. There's no shortcut tool. The pages that Google chose not to index need actual improvement, not resubmission.
Expected results
Indexation rate on rewritten clusters typically jumps from 15% to 60-90% within 7-30 days of re-submission. The remaining 10-40% gap is genuinely thin pages that should be merged with neighbors or removed entirely. Pruning is part of the fix.
Why programmatic SEO above 100 pages is a quality problem
Programmatic SEO at <100 pages can succeed with templates. Above 100, Google starts treating near-duplicates as low-value. Above 500, the threshold tightens further. Volume programmatic SEO requires per-cluster substance — the templates get you started, but cluster-by-cluster depth is what gets the pages indexed.
The brutal truth most operators avoid
If 800 pages got 120 indexed, the answer isn't "publish 1600 pages and hope." The answer is "rewrite the existing 800 with depth." Doubling the page count without fixing quality produces a worse signal to Google, not a better one.
What Scavio uniquely buys you here
Topical-density audit is search-volume work. Doing it manually for 16 clusters takes a week of a senior's time. Doing it via Scavio: site:competitor.com TOPIC dorks + Reddit signal + AI Overview lookup, parsed by an LLM into a per-cluster brief, takes a few hours. The brief is what the rewrite team works against. Quality of the rewrite correlates with quality of the brief.
The honest path
No instant indexing tool. No paid "submit faster" service. Diagnose with GSC, audit with Scavio, rewrite per cluster, resubmit. The work is real. The result is durable.