Detect pSEO Placeholder Leaks
Find template variables like {{city}} or [TBD] that leaked into production HTML.
The Problem
Programmatic SEO generates thousands of pages from templates. When a data source is missing or a variable isn’t bound, visitors (and Google) see raw template syntax: {{city_name}}, %PRICE%, or the dreaded [TBD].
Google’s Helpful Content Update penalises thin content at the site level. A handful of leaked placeholders can tank rankings for your entire domain.
The Hard Way
You’d need to crawl every generated page and regex-search the rendered HTML for patterns like {{.*}}, \$\{.*\}, %[A-Z_]+%, [TBD], [TODO], lorem ipsum, and dozens more. At 10k+ pages, this is a multi-hour scripting job that needs to run after every deployment.
The SEODiff Way
One API call. Results in under 2 seconds.
POST https://seodiff.io/api/v1/agent/evaluate
{"urls": ["https://example.com/city/springfield"], "assertions": [{"rule": "no_placeholders"}]}Code Examples
Copy-paste examples in your preferred language:
cURL
See the full evaluation example in cURL →
Python
See the full evaluation example in Python →
Node.js
See the full evaluation example in Node.js →
Go
See the full evaluation example in Go →
PHP
See the full evaluation example in PHP →
Related Assertions
min_word_count
Prevent thin content by requiring a minimum number of words per page.
contains_string
Verify that specific text appears in the rendered page.
regex_not_match
Ensure a regex pattern does NOT match in the page HTML.
Use in CI/CD
Add this assertion to your deployment pipeline. Works with any CI platform:
🐙 GitHub Actions
Block bad deployments with automated SEO checks in your GitHub Actions CI/CD pipeline.
🦊 GitLab CI
Add automated SEO quality gates to your GitLab CI/CD pipelines.
▲ Vercel
Automatically validate SEO on every Vercel preview deployment before promoting to production.