Run #13 ok
audit
Per-page SEO audit
URL: https://example.org Run: #13 · Status: ok · Cost: $0.0000 When: 2026-06-01T07:34:22+00:00
Pre-flight
- CMS: unknown
- Language: unknown
- Final URL: https://example.org/
- Blocked: no
- JS-rendered: no
- Robots allowed: True
Technical audit
- PASS: 6 · FAIL: 8 · FLAG: 7 · SKIPPED: 4
- Critical fails: 5
Fails (must fix)
| Check | Severity | Message | Fix | |
|---|---|---|---|---|
| Canonical tag | critical | canonical tag missing | Add <link rel='canonical' href='<this page's clean URL>'> to <head>. | |
| Title tag | critical | title tag missing | Add <title>…</title> to <head>. | |
| Meta description | critical | meta description missing | Add a 110-160 char meta description. | |
| lang / charset / viewport | warn | missing <html lang>; missing charset meta; missing viewport meta | Add the missing <html lang>, <meta charset>, or <meta viewport>. | |
| Schema — JSON-LD present | critical | no JSON-LD schema found | Add the SOP §6.3 graph (Organization, Person, WebSite, WebPage, Article\ | Service, BreadcrumbList, FAQPage if visible FAQ). |
| Page structure — exactly one H1 | critical | no H1 found | Add exactly one H1 to the page. | |
| Footer — Privacy Policy link | warn | no <footer> element found | Add a <footer> with required links. | |
| Footer — Sitemap link | warn | no <footer> element found | Add a <footer> with required links. |
Flags (review)
| Check | Severity | Message | Fix |
|---|---|---|---|
| Open Graph tags | warn | missing: og:title, og:description, og:image, og:url, og:type | Add the missing og:* meta tags in <head>. |
| Twitter Card tags | info | missing: twitter:card, twitter:title, twitter:description, twitter:image | Add the missing twitter:* meta tags in <head>. |
| Content — images in H2/H3 sections | warn | 0 image(s) inside H2/H3 sections (target ≥3) | Add more images under H2/H3 sub-headings. |
| Content — outbound internal links | warn | 0 internal link(s) (target ≥2) | Add at least 2 internal links to relevant pages on the site. |
| Content — Google Map embed | info | no Google Map iframe found | Embed the client's GBP map iframe on the page. |
| Root artifact — /llm.txt | info | not found | Add /llm.txt at the site root. |
| Root artifact — /humans.txt | info | not found | Add /humans.txt at the site root. |
Production checklist (SOP 5-phase)
Phase 1
| Owner | Item | Status | Notes |
|---|---|---|---|
| Copywriter | Primary keyword phrase selected | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Copywriter | Top 3 non-listicle competitor/authority pages pulled and saved as PDFs | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Copywriter | (Optional) CORA wordcount targets + source selection set | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Copywriter | All research inputs saved in /01 Research | MANUAL | requires access the tool lacks (login / sign-off / board state) |
Phase 2
| Owner | Item | Status | Notes |
|---|---|---|---|
| Copywriter | MODE=OUTLINE produced (MECE outline, H2/H3/H4 + FAQ question list) | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Copywriter | MODE=DRAFT_SECTION run per H2 and full draft assembled in Google Doc | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Copywriter | Copy reads naturally: atomic paragraphs (1-3 sentences), expert tone | FLAG | needs human editorial/visual review |
| Copywriter | Definitional sections lead with a short answer-first paragraph | FLAG | needs human editorial/visual review |
| Copywriter | Image briefs (1 per major H2) with suggested concept + alt text | FLAG | needs human editorial/visual review |
| Copywriter | No external links and no invented facts/stats/awards in the copy | FLAG | needs human editorial/visual review |
Phase 3
| Owner | Item | Status | Notes |
|---|---|---|---|
| Coordinator | Client approved the copy in Google Docs | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Approved doc duplicated to /03, renamed APPROVED (YYYY-MM-DD), PDF exported | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Copywriter | GB_APPROVED_COPY_PACKET built in a NEW chat (self-contained) and saved | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: Meta Title included in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: Meta Description included in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: Breadcrumb Trail (labels + URLs) included in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: TL;DR (30-60 words) included in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: Jump Links list (H2s) included in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: Anchor IDs for every H2 + H3 included in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: Visible FAQ Q/A present (final wording) in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: Internal link suggestions (2 from + 2 to) in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: Image briefs (1 per major H2) in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Packet QA gate: {{MISSING_DATA}} placeholders used where needed in packet | MANUAL | requires access the tool lacks (login / sign-off / board state) |
Phase 4
| Owner | Item | Status | Notes |
|---|---|---|---|
| Developer | Breadcrumb links at top of page + corresponding BreadcrumbList schema | SKIPPED | mapped check(s) not present in audit: Schema — required types, Schema — canonical hostname consistency |
| Developer | Hero/above-the-fold: H1 + TL;DR answer block + jump links | FAIL | Page structure — exactly one H1: no H1 found |
| Developer | Section anchors match the IDs referenced in schema / jump links | PASS | Page structure — jump links resolve: all jump links resolve |
| Developer | Expandable FAQ UI (accordion or <details>/<summary>) | SKIPPED | Page structure — FAQ as accordion: no visible FAQ detected |
| Developer | JSON-LD present (single <script type="application/ld+json"> block) | FAIL | Schema — JSON-LD present: no JSON-LD schema found |
| Developer | Add 2 relevant internal links FROM the page (and 2 TO the page) | FLAG | Content — outbound internal links: 0 internal link(s) (target ≥2) |
| Developer | Add images per Image Briefs with correct alt text | FLAG | Content — images in H2/H3 sections: 0 image(s) inside H2/H3 sections (target ≥3) |
| Developer | Schema graph present: Organization, Person, WebSite, WebPage, BreadcrumbList | SKIPPED | mapped check(s) not present in audit: Schema — required types |
| Developer | Page-type schema present: BlogPosting OR Service (match page type) | SKIPPED | mapped check(s) not present in audit: Schema — page-type (Article/Service) |
| Developer | Article/WebPage required fields present (headline, author, dates, etc.) | SKIPPED | mapped check(s) not present in audit: Schema — Article required fields |
| Developer | Meta Title set on the built page (from packet) | FAIL | Title tag: title tag missing |
| Developer | Meta Description set on the built page (from packet) | FAIL | Meta description: meta description missing |
Phase 5
| Owner | Item | Status | Notes |
|---|---|---|---|
| Developer | Exactly one H1 | FAIL | Page structure — exactly one H1: no H1 found |
| Developer | No empty headings | PASS | Page structure — no empty headings: no empty headings |
| Developer | All jump links work and scroll to the correct section | PASS | Page structure — jump links resolve: all jump links resolve |
| Developer | Breadcrumb links are correct and match breadcrumb schema URLs | SKIPPED | mapped check(s) not present in audit: Schema — canonical hostname consistency, Schema — required types |
| Developer | FAQ accordion displays correctly on mobile and desktop | SKIPPED | Page structure — FAQ as accordion: no visible FAQ detected |
| Developer | FAQ schema Q/A matches visible Q/A exactly (word-for-word) | SKIPPED | mapped check(s) not present in audit: Schema — FAQPage matches visible FAQ |
| Developer | No {{MISSING_DATA}} placeholders remain (unless documented) | PASS | Page structure — no {{MISSING_DATA}} placeholders: none found |
| Developer | Required schema graph present and well-formed (validator / Rich Results) | FAIL | Schema — JSON-LD present: no JSON-LD schema found |
| Developer | Canonical correct + consistent hostname (www vs non-www) | FAIL | Canonical tag: canonical tag missing |
| Developer | Page is indexable (no stray noindex / robots block) | PASS | Indexability — noindex: page is indexable |
| Developer | No external links in the body copy | FLAG | needs human editorial/visual review |
| Coordinator | QA screenshots captured (mobile + desktop) and saved in /05 QA Proof | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Developer | Indexing submission recorded (Search Console) after publish | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | Final Coordinator QA sign-off before publish | MANUAL | requires access the tool lacks (login / sign-off / board state) |
| Coordinator | 06 PATCH History: post-build copy/meta changes applied as minimal diffs (if any) | MANUAL | requires access the tool lacks (login / sign-off / board state) |