Tool · tool guide

JSON SEO Report: The Gate File, Not the Table

A JSON SEO report is the gate file from --format json, not the human table. Parsers must fail closed on a missing file. Lights are not a Google 100 score.

Published Updated 12 min readBy William Zhu & InfiniSynapse Data Team

Author credentials: William Zhu is cofounder of InfiniSynapse (GitHub @allwefantasy). Desk: shipping SEO Health and the /en/tool/ visibility pages. No personal LinkedIn published. About: team / editorial standards · Vision.

JSON SEO Report: The Gate File, Not the Table
On this page

By William Zhu · Cofounder, InfiniSynapse · Last updated: 2026-09-10 · Last verified: 2026-09-10 · Methods: Compared seo-health --format json artifacts with table output after npm i -g infinitegrowth. check/audit/links without login. Parsers fail closed. Deep commands need a CLI key and credits. Not an official Google score. Observed CLI contract 2026-09-10 on infinitegrowth@0.1.1: seo-health check --format json can exit 0 while issues[].status is error.

Author / off-site profiles: GitHub @allwefantasy · auto-coder · GitHub @InfiniSynapse · LinkedIn company (no personal profile) · Editorial standards. No personal LinkedIn or vendor badge. Product recognition: SEO Health Checker is one of two first-prize works in the InfiniSynapse × CSDN Vibe Coding contest (published contest results). InfiniSynapse co-hosted the contest. That list is not a review of this article.

Reviewed by: InfiniSynapse Data Team · method review 2026-09-10. First-party method review, not a third-party award.

Trust / COI: About · Corrections · Publishing principles · Privacy · Terms. SEO Health is commercial. InfiniSynapse co-hosted the Vibe Coding contest that named SEO Health Checker a first-prize work. The issues[] table below is observed. Topic desks stay illustrative. The InfiniSynapse Data Team publishes this desk method.

JSON SEO report as the gate file, not the human table

TL;DR

A JSON SEO report is the --format json file the job parses. It is not the Markdown table in the log, and it is not a Google 100. You install infinitegrowth, run seo-health check or audit, write the artifact, and fail closed when the file is missing or title, meta, headings, density, images, links, tech, or speed lights go red.

Direct answer: A JSON SEO report is the gate contract. check, audit, and links can run without login. eeat, aivisibility, and gsc need a CLI key and credits. Humans can still read the table. The parser cannot.

What you will learn: why the table is commentary; how fail-closed works; an illustrative format × parser-outcome table; four steps that keep a grep of English from green-washing a merge.

Paste a public URL at aimeetup.center/seo-tools#check if you only needed the eight lights in a browser tonight.

We evaluate a JSON SEO report hands-on as the InfiniSynapse Data Team. We build InfiniSynapse only for credited deep write-up after the gate file already exists.

What a JSON SEO report actually is

Key Definition: A JSON SEO report is the structured artifact from seo-health --format json that a parser reads for module colors. It is not the human table, not a warehouse export, and not an official Google site score.

Observed page CLI (2026-09-10, infinitegrowth@0.1.1): seo-health check https://nodejs.org/en/learn/getting-started/introduction-to-nodejs --format json --lang en exited 0. issues[].status listed Meta Description (error), Title Length (warning). Process exit 0 is not a clean page.

issues[].nameissues[].status
Meta Descriptionerror
Title Lengthwarning
H1 Taggood
URLgood
Robots.txtgood
Sitemap.xmlgood
Page Structuregood

The topic desk below stays illustrative.

Independent citation: According to [JSON object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON), MDN documents this web platform behavior as an independent reference. MDN's JSON object page is the third-party rule this write-up holds to. Illustrative desks below are not that rule.

People search JSON SEO report when a pipeline ticket says “attach the report.” If that attachment is a screenshot of a table, you do not have a gate. You have a slide.

json.org’s JSON introduction is the right grain: objects, arrays, strings a machine can parse. A JSON SEO report is that grain with eight module colors. If your job greps “red” in a prose sentence, the first label change will pass a blank title.

Wikipedia’s serialization article is the same reminder: programs agree on a written form. W3C Architecture of the World Wide Web is a later identification habit, not a substitute for the gate file. RFC 8259 is the IETF text for that agreement. A JSON SEO report that is almost JSON — a trailing comment, a truncated log — is not a report. Fail closed.

Install with npm i -g infinitegrowth. The binary is seo-health. Install notes live on the command-line install page; this page does not retarget that old phrase. The hub that uses the file as a merge gate is SEO CI/CD.

The file is the contract

Microsoft’s System.Text.Json overview is enough to load the artifact and exit 1 on a required red. MDN’s JSON object page is enough if the runner is already JavaScript. A JSON SEO report does not need a platform SDK.

Eight modules still sit in that file: title, meta, headings, density, images, links, tech, and speed. Traffic lights are not a Google 100. Chrome can finish basic modules locally unless you start AI EEAT.

What the table is for

The table is for the pull-request comment. A JSON SEO report is for the exit code. Keep both if you want. Gate on one.

If someone only needed humans to see the lights, they needed the SEO health checker, not a second copy of the table.

The gate-file framework

Treat a JSON SEO report as three layers: emit the file; parse fields you named; fail closed on missing or red. Commentary is optional. Silence is a fail.

schema.org documents describe structured data you put on a page. That is a different JSON. Do not confuse on-page JSON-LD with the gate file. A JSON SEO report is the job artifact, not the page’s schema blob.

Fail closed, never fail open

If the artifact is missing, truncated, or not JSON, exit non-zero. A JSON SEO report policy that treats a parse error as “warn only” will merge a blank title the day the runner disks fill.

seo-health calls aimeetup.center. Deep commands use the same credits and long-task API. JSON is for the gate.

That boundary is the method. The rule engine that colors the lights stays on aimeetup. InfiniSynapse does not replace that engine. The table does not replace the file.

Keep deep commands out of the default artifact

eeat, aivisibility, and gsc spend credits and start long tasks. A JSON SEO report from those commands can exist on a signed-off job. It must not be the only file the pull request parses.

The human-readable sibling of audit is the SEO website audit page. This article stays on the gate file.

JSON versus the human table

Use JSON when a machine must decide. Use the table when a human must skim. A JSON SEO report that is generated by screenshotting the table will break when the column order changes.

check writes one URL. audit --pages writes a 50–500 sample. links writes status codes. Each can emit --format json. Pick the command, then pick the file.

If the next job is a clocked sample, open the scheduled site audit guide after the parser already fails closed.

If the next job is the package that prints the file, open infinitegrowth npm after you accept that the package name is not the report.

If the runner is GitLab, open the GitLab CI SEO check guide after the artifact path is written.

Landscape of report formats in 2026

Table, HTML comment, and JSON can all describe the same eight lights. The JSON SEO report is the only one a parser should trust.

A CSV you hand-built from the table is a second transcription. It will drift. Parse the file the binary emitted.

A long-task narrative is prose. It can attach next to the artifact. It cannot be the artifact.

Browser paste, table log, and the gate file

The browser form teaches. The table log comments. The JSON SEO report gates. Keep that order.

Do not convert lights into a fake 0–100 Google score in the JSON. Colors stay colors.

How to fail closed on the gate file

This method H2 is the four-step parse. A JSON SEO report starts after the preview or sitemap job can write a file.

Step 1 — Install infinitegrowth and pick the command

Run npm i -g infinitegrowth. Confirm seo-health is on PATH. Choose check for one preview, audit --pages between 50 and 500 for a sample, or links for status codes. A JSON SEO report from the wrong command will look complete and still miss the URL you care about.

check, audit, and links need no login. Do not require a key for those three.

Step 2 — Emit --format json to a known path

Add --format json and write a path the job will keep as an artifact. A JSON SEO report that only prints to a scrolling log will be truncated. Name the file in the ticket.

Use a public URL. Do not send secrets into the command that writes the file.

Step 3 — Parse named fields, not English rows

Load the document with a JSON library. Read the field you named for each required module. A JSON SEO report parser that splits on spaces will fail the first time a label wraps.

If parse throws, exit non-zero. Fail closed.

Step 4 — Map red to a non-zero exit, then re-run after the fix

Required reds fail the job. Optional ambers can warn if you documented them. A JSON SEO report with silent greens is not a gate.

Re-run after the title or heading fix. Do not edit the JSON by hand to manufacture a pass. Keep eeat off this default path unless a named owner accepted the spend.

Independent citation 2: According to [documents](https://schema.org/docs/documents.html), Schema.org defines a shared vocabulary for marking entities on a page. A second independent source, from Schema.org, keeps this page claim from resting only on first-party lights.

Desk sample: parser outcomes by format

The table is an illustrative InfiniSynapse desk log, not a customer result. Two dimensions: format and parser outcome (DESK-IG812-20260909A).

Format (illustrative)Parser inputTitle red presentJob
--format json fileValid objectNoPass
--format json fileValid objectYesFail
Table in the logGrep of EnglishYesFalse pass (anti-pattern)
Missing artifactn/an/aFail closed

A JSON SEO report on this desk failed the valid file with a red title and failed closed when the file was missing. The table-grep row is the failure mode: the English still said “red” in a new label and the grep missed it. First-party desk counts are labeled illustrative.

Illustrative grouped bars of a JSON SEO report by format and parser outcome

Figure: illustrative grouped bars — format × parser outcome. Two dimensions. Not a Google score and not a customer lift.

How to read the grouped bars

Each cluster is a format. Each bar is an outcome class. If the JSON file is valid and title is red, the job must fail. If the file is missing, the job must fail closed. If only the table row “passes,” you parsed the wrong thing. The JSON SEO report is the file.

If your run differs, trust your run. Social cut: ./images/og-cover.png.

Selection scorecard for a gate file

Score each row 0–2 when someone asks for a JSON SEO report today.

Question012
Is --format json written in the job?Table onlyJSON printed, not savedArtifact path named
Does a missing file fail the job?Warn and mergeRetry once, then mergeFail closed
Do you parse fields, not sentences?Grep of “red”Fragile keyStable module field
Can check run without login?Key requiredKey only for deep commandsNo key
Are lights left as colors?Fake Google 100Mixed scoreColors only

Under 6 means you wanted a comment screenshot. 8–10 means keep the file. A JSON SEO report is a contract, not a slide.

Failure modes that parse the table

The first failure is grepping the table. Labels change. A JSON SEO report exists so you stop doing that.

The second failure is treating a parse error as amber. Fail closed. Disk-full nights are when blank titles ship.

The third failure is editing the JSON to hide a red. The next run will put the red back. Fix the page.

The fourth failure is attaching only a long-task essay. Prose is not a module color.

The fifth failure is citing a service-case traffic story as report proof. A service-case traffic story is not product proof. It is not an SEO Health uplift for an artifact.

Cluster guides for this automation pillar

This page is the gate-file job. Open one row when you have that job. Keep the JSON SEO report phrase on this page.

Job you actually haveGuide to open nextWhat this page will not do
Fail the pull requestSEO CI/CD (hub)Retarget the hub phrase
Nightly audit --pagesScheduled site auditTurn the file into a warehouse load
Package name and installinfinitegrowth npmSteal a command-line brand keyword
GitLab runner fileGitLab CI SEO checkChange the artifact contract
Eight lights for humansSEO health checkerFinish in 30 seconds on a paste
Human write-up of the capSEO website auditWrite prose before the file exists

Keep the gate file, not the table

Paste the public URL at the live checker, then save seo-health --format json as the artifact the job parses.

Run SEO Health Checker

Use a public URL you can stand behind. Do not paste secrets.

Inspect the complete Json SEO Report page

Paste a sanitized URL into the InfiniSynapse SEO Health Checker so every title, mention, citation, and on-page layer can be reviewed together. Then validate the findings on the live page.

Open SEO Health CheckerRemove credentials, secrets, personal data, and sensitive literals.

Frequently Asked Questions

Is the table enough for the job?

Bottom line: No. A JSON SEO report is the --format json file. The table is commentary. If the file is missing, fail closed.

Which commands can emit the file without login?

Bottom line: check, audit, and links can run without login and can emit JSON. eeat, aivisibility, and gsc need a CLI key and credits. A JSON SEO report for the default gate should come from the first three.

What does fail closed mean?

Bottom line: If the JSON SEO report is missing, truncated, or not parseable, the job exits non-zero. A parse error is not a soft pass.

Can I turn lights into a Google 100 in the JSON?

Bottom line: No. Eight modules, eight colors. A JSON SEO report must not invent an official Google score.

Conclusion

A JSON SEO report is the gate file, not the table. Install infinitegrowth, run seo-health without login for check/audit/links, emit --format json, parse fields, and fail closed. Keep credited narrative off the default artifact. Keep Google scores out of the file.

If you need the signed-in account that holds those credits, open the InfiniSynapse web app once, then return to aimeetup for the checker. Keep the file. Fail the job.

WZ

William Zhu · Cofounder, InfiniSynapse · GitHub @allwefantasy

Desk-validated SEO Health methods. Corrections: zhuhl@infinisynapse.com · corrections policy.

JSON SEO Report: The Gate File, Not the Table