Skip to main content

Integration not detected

If your integration panel still shows Not detected after you’ve deployed, this page explains why and how to resolve it.

How detection works

There are three detection paths depending on your integration method: 1. Scan (homepage crawl) The next time InstantSchema scans your site, it runs detectIntegration against your homepage’s raw HTML. No JavaScript is executed — it looks for specific signatures in the source:
  • CDN script: /v1/loader.js + data-project-id="YOUR_PROJECT_ID" in a script tag
  • Inline script: fetch URL /api/v1/structured-data?project=YOUR_PROJECT_ID in the page source
  • SDK / npm: data-instantschema="1" on a <script type="application/ld+json"> tag
2. Dashboard poll (live check) While your integration is unconfirmed, the dashboard fetches your live homepage every 8 seconds and runs the same detection logic. Detection is usually near-instant once you deploy — you don’t need to wait for the next scheduled scan. 3. GTM and custom API — manual only GTM injects scripts at runtime, and custom API schemas are only distinguishable if you add data-instantschema="1" to your rendered tags. Without that marker, these methods cannot be detected automatically. Use the Mark as active button in the integration panel.

Common causes

Tag or snippet is not on the homepage

Detection runs against your homepage (/). If you only added the script tag to inner pages, the dashboard won’t detect it. Add the tag to a layout or template that renders on every page, including the root.

Wrong project ID

Check that data-project-id (CDN) or the project= query parameter (inline script) exactly matches the Project ID shown in your dashboard. UUIDs are case-sensitive.

Code not deployed yet

The poll hits your live site, not localhost. Make sure your changes are deployed before checking the dashboard.

Detection ran before deploy completed

If the poll fired during a rolling deploy, it may have hit an instance that hadn’t restarted yet. Wait a few seconds and refresh the dashboard — the poll will retry automatically.

Using GTM or custom API without a marker

Neither GTM nor unmarked custom API schemas can be detected from the HTML source. Use Mark as active in the integration panel after you’ve verified the integration is live.

Step-by-step resolution

  1. Open your live homepage in a browser and view the page source (Ctrl+U / Cmd+Option+U).
  2. Search for your Project ID. If it’s not there, the tag hasn’t been deployed or is on the wrong template.
  3. Check the exact attribute name: data-project-id for CDN, project= in the fetch URL for inline script, data-instantschema="1" on the schema tag for SDK.
  4. If everything looks correct in source, wait 10–15 seconds and check the dashboard again — the poll will detect it on the next cycle.
  5. For GTM or custom API: click Mark as active in the integration panel once you’ve confirmed the integration is running.

Resetting detection

If you’ve switched integration methods or removed the integration, click Disable in the integration panel. This resets the status so detection runs again from scratch.