The full audit of generated pages.
Every check in this reference, run against the built pages (or Markdown sources) on disk: invented numbers, indexing, duplicates, hreflang clusters, headings and structured data. Reports HTML and JSON.
usage: indexgap check [-h] [--site SITE] [--home HOME] [--config CONFIG]
[--profile PROFILE] [--sitemap SITEMAP]
[--indexed [source=]file] [--gsc GSC] [--out OUT]
[--dataset DATASET] [--keyword KEYWORD]
[--robots ROBOTS] [--no-content] [--no-aeo] [--strict]
[--baseline JSON] [--lang {en,ru}]
[root]
positional arguments:
root directory of pages; taken from indexgap.json by
default
options:
-h, --help show this help message and exit
--site SITE the full site address; taken from indexgap.json by
default
--home HOME URL of the home page; defaults to --site itself
--config CONFIG path to indexgap.json; looked for next to the pages by
default
--profile PROFILE content type: catalog, events, ugc, product. Changes
thresholds and which checks run — see `indexgap
profiles`
--sitemap SITEMAP path or URL of sitemap.xml to compare against
--indexed [source=]file
an export listing pages: a webmaster panel, Ahrefs,
Semrush, Screaming Frog, GA4, Copilot citations from
Bing AI Performance and others. CSV, XLSX, JSON or a
plain list of addresses. Repeat it as needed:
--indexed google=gsc.csv --indexed ahrefs=pages.xlsx.
The source is detected on its own; a label is only
needed when the filename says nothing
--gsc GSC the same as --indexed google=... (kept for
compatibility)
--out OUT where to write the HTML report; the machine-readable
data goes next to it with a .json extension. A name
ending in .json names the data, and the report goes
next to it as .html
--dataset DATASET the keyword set (CSV or XLSX) — switches on fact-
checking against the rows
--keyword KEYWORD the keyword column in the dataset
--robots ROBOTS path to the project's robots.txt
--no-content skip the text checks
--no-aeo skip the machine-readability checks
--strict exit non-zero when there are critical findings — for
CI
--baseline JSON data from an earlier run: findings already in it count
as known debt, and --strict fails the build only on
new ones
--lang {en,ru} output language: en or ru. By default from
INDEXGAP_LANG or the system locale, otherwise English