# Confirm your schema is actually live — on the real page.

**Feature:** Live schema test

One click fetches the live URL and checks that the structured data you generated is really being served. No guessing, no "it worked when we shipped it" — the actual response, verified.

---

## The problem

Schema injection breaks invisibly. A Worker route gets disabled, a template is rewritten, a cache is purged, a CDN setting changes — and your rich results disappear with no error anywhere.

Your logs are clean. Your monitoring is green. The page loads perfectly. You find out when rankings slip, because nobody re-checks structured data by hand across hundreds of URLs, and there is no error page for "the markup you paid for is no longer on this page."

---

## How it works

1. **Hit Test on any page** — The action sits in your sitemap table, next to the page it checks. MetaPilot fetches the live URL right then — no queue, no wait.
2. **It reads the HTML you are really serving** — It parses the JSON-LD and Open Graph tags actually present in the response and compares them against what MetaPilot generated for that URL.
3. **You get a clear verdict** — Pass, warn or fail per check, plus exactly what was found live — so "is my schema live?" stops being a question you answer by squinting at view-source.

---

## Example test output

```
PASS  Page reachable          HTTP 200 · 184 ms
PASS  Schema.org JSON-LD      2 valid blocks found
PASS  Our schema is live      Article present
WARN  Open Graph tags         missing og:image
PASS  Our Open Graph is live  4/4 served
FAIL  Injections live         FAQ section not found

verdict FAIL — your FAQ anchor has stopped matching
```

---

## What you get

- **Point-in-time proof, not a preview** — You see the live JSON-LD on the real page, fetched from your real origin through your real CDN. A disabled Worker route or a stripped tag shows up immediately.
- **Six checks, not one** — Page reachable, JSON-LD present and valid, *our* schema type live, core Open Graph coverage, our Open Graph tags live, and whether any FAQ or How-To section you published is still on the page.
- **Catches the failures that produce no error** — Schema present but the wrong type, schema gone entirely, an authored block whose anchor stopped matching. None of these throw anything. All of them cost you rich results.
- **Right where you work** — No separate validator to paste URLs into, no browser extension. Test the row you are already looking at, in the table that lists every page MetaPilot manages.
- **Every test teaches the sitemap something** — The fetch records what the URL returned and how long it took, so the sitemap table can show and filter on pages that 404 or crawl slowly.
- **The same check runs continuously** — This is the on-demand version. Schema-liveness monitoring runs the identical inspection on a schedule against every page on auto-pilot and alerts you when a page that was live stops being live.

---

## Plan availability

Available on **every plan** as an on-demand action, with no cap on how often you run it. The scheduled, always-on version — with incidents and alerts — is structured-data liveness monitoring, which is also uncapped: it covers every page you put on auto-pilot, on every plan. Your tier buys the re-check cadence, not the page count.

---

## Frequently asked

**What does Test actually check?**
It fetches the live URL and confirms the structured data MetaPilot generated is present in the served HTML, then flags it if it is missing, invalid, or a different type than expected. It checks your Open Graph tags and any published FAQ or How-To sections the same way.

**Is this the same as Google's Rich Results Test?**
It is complementary. Google's tool tells you whether markup is *eligible* for a rich result. This tells you whether *your* generated markup is actually on the page right now — the part that breaks silently after a deploy or a cache purge, and the part no validator watches for you.

**Does it monitor pages automatically?**
This action is on demand, but the continuous version has shipped: liveness monitoring re-runs the same inspection on a schedule for every page on auto-pilot and opens an incident when one regresses.

**Why would live schema disappear?**
A disabled Worker route, a rewritten template, a purged cache, a CDN change, a URL that moved. All silent, none of them raise an error anywhere, and rankings slip weeks before anyone connects the two.

**Does it work if my page is blocked in robots.txt?**
Yes. Reading your own page at your own request is not crawling, so the test runs regardless — a page can be robots-disallowed and still need its injected schema verified.

**What does a warning mean on a page I just generated?**
Usually that injection has not propagated yet. A page whose schema has never been confirmed live is treated as still settling rather than broken — which is also why monitoring will not alert on it.

---

## Keep reading

- Continuous uptime and liveness monitoring
- How edge injection puts schema on the page
- What are rich results?
- Structured data generated for every page