Privacy Policy
Who this applies to
This policy covers the browser extension “JSON-LD & Agent Inspector” (also published as “JSON-LD Tester”) for Safari, Google Chrome and Mozilla Firefox. The developer is Gerhard Kanzler.
Data we collect
None. The developer does not collect, receive, store, sell or share any personal data. No data ever leaves your device to us.
What the extension processes locally
All processing happens inside the extension, on your own device. Nothing is persisted except your settings and the dataLayer snapshots you explicitly save:
| Data | When | Stored where | Removed when |
|---|---|---|---|
| Structured data on the current page (JSON-LD, canonical, robots, page meta) | When you open the extension on a page | In-memory only (not persisted) | When you close the extension window |
| Agent-tool list & schemas (WebMCP) | When you open the Agent Tools tab | In-memory only (not persisted) | When you close the extension window |
| Data layer contents of the current page (GA4/GTM events, consent signals) | When you open the dataLayer tab | In-memory only (read-only access; not persisted unless you save a snapshot) | When you close the extension window |
| dataLayer snapshots (values that look like personal data are masked before storing) | Only when you click “Save snapshot” | Your browser’s local extension storage on your device (max 50 snapshots) | When you delete them, or on uninstall |
| Your settings (theme, language, default validator, header check, auto-update) | When you change a setting | Your browser’s local extension storage on your device | On uninstall or manual change |
Data that is never transmitted
- Visited URLs
- Page content or the structured data found on a page
- Agent-tool schemas or any inputs you type into the tool tester
- Data layer contents, including any personal data they may contain
- Browsing history (the extension has no access to it)
Reading the data layer does not change the page
The dataLayer tab reads window.dataLayer (and digitalData, adobeDataLayer, utag_data and similar) once, on demand. It does not wrap or replace dataLayer.push, so no page behaviour changes and no tracking events are triggered by the extension. Values that look like personal data (e-mail addresses, phone numbers, IBANs, card numbers) are reported by path, never by value, and are masked before anything is copied, printed to a PDF report or saved as a snapshot.
Network requests the extension makes
The extension makes no requests to the developer and no third-party requests. The only network activity is optional and goes to the website you are currently viewing (same-origin), never to us:
- Opening an external validator (Google Rich Results Test or the Schema.org Validator): opens a new tab with the current page’s URL, a normal navigation you click. Nothing is posted automatically.
- Reading HTTP response headers: one same-origin request from the page to its own URL to show response headers and indexability. Can be turned off in Settings.
- Checking agent/crawler files (only when you open the Readiness tab): same-origin requests to the site’s own
/llms.txt,/robots.txt,/sitemap.xml,/ai.txtand similar. Every request goes to the site itself; nothing is uploaded. - Running an agent tool: only after your explicit, multi-step confirmation, and it calls the current website’s own code, not the developer.
Permissions
The extension requests only the minimum permissions it needs (activeTab, scripting, storage, sidePanel) and reads the active page only on demand. There is no background content script running on the pages you visit. Version 2.4 added the dataLayer, social-preview and hreflang checks without requesting any new permission; all of them are same-origin only.
Children
The extension is a developer/SEO tool and is not directed at children. It collects no data from anyone.
Changes to this policy
If this policy changes, the updated version will be posted on this page with a new “Last updated” date.
Contact
Questions about privacy? Please open an issue at the project’s GitHub issue tracker.