Structured data under control

We check structured data, deploy fixes safely and detect regressions after your site changes

EvidMark looks after the JSON-LD of your whole site. Every value points to its source on the page, and after a theme, plugin or price update you know whether your markup is still correct.

No sign-up and no card. Your home page and 10 more pages.

  • Every value with evidence
  • Rollout after your approval
  • One-click rollback
Illustration: evidence for every value A product page with its name, price and availability highlighted, linked by lines to the matching fields in JSON-LD code. example-shop.pl/lampa-nord Shop / Lighting / Lamp Nord table lamp PLN 349.00 In stock application/ld+json { "@type": "Product", "name": "Nord table lamp", "offers": { "@type": "Offer", "price": "349.00", "priceCurrency": "PLN", "availability": "InStock" } } name ← DOM: h1 heading price ← CMS: PLN 349.00 → 349.00 PLN availability ← CMS Illustration: evidence for every value A product page with three highlighted fragments (name, price, availability) and JSON-LD code where the same numbers and colours mark the fields derived from them. example-shop.pl/lampa-nord Nord table lamp PLN 349.00 In stock 1 2 3 application/ld+json { "@type": "Product", "name": "Nord table lamp", "offers": { "price": "349.00", "priceCurrency": "PLN", "availability": "InStock" } 1 2 3
The problem

Your markup works today. What about after the next update?

Structured data breaks quietly. The page looks the same, so nobody notices that the programs reading it now see something different.

  • 01

    Disappears after a theme update

    A theme or page builder stops printing JSON-LD. Nothing crashes, the markup is simply gone.

  • 02

    Two plugins, two descriptions

    An SEO plugin and a shop plugin describe the same product separately. The data duplicates or contradicts itself.

  • 03

    Prices that do not match the page

    The markup keeps an old price or availability while visitors see a different one on the page.

  • 04

    Nobody notices

    The error is often found weeks later, while working on something else. Until then, the data on your site is out of date.

How it looks with EvidMark

example incident flow

  1. Control scan

    All good

    Markup is present and matches the page.

    healthy
  2. Change on the site

    Theme update

    The theme is updated. The page looks the same.

    change
  3. Next scan

    Regression detected

    Product markup vanished from the template.

    incident
  4. Alert

    You know right away

    You see what disappeared and where.

    needs action
  5. Fix

    Fix and re-check

    You deploy the fix, EvidMark confirms it.

    confirmed
How it works

From a site address to ongoing care in five steps

All you need is your site address. We detect the rest and only ask about what cannot be found on the page.

  1. Paste a URL

    One field, no sign-up, no card. The audit covers your home page and 10 more pages.

  2. Sample and templates

    We fetch a varied sample of addresses and recognise page types. The full crawl finishes in the background.

  3. A proposal with evidence

    For each template you see sample JSON-LD and a page preview with the source of every value highlighted.

  4. Safe rollout

    You choose a mode and channel, test on a few URLs, review the resulting HTML and approve.

  5. Care and alerts

    A dashboard shows status, changes and incidents. When markup disappears or duplicates, you get an alert.

Benefits

Quality control, not another generator

What matters is upkeep: correct, current and documented structured data for the whole site, with a full change history.

Every value with evidence

A price, name or availability points to the page fragment or CMS field it came from. No evidence means no property, never a guess.

fieldoffers.price
sourcecms
fragment"PLN 349.00"
value349.00 PLN
stateknown

Templates, not single pages

We recognise page types and learn extraction once per template. Hundreds of products are covered by one rule you can inspect.

Works alongside Yoast and Rank Math

We do not touch existing markup without your decision. You start by observing and only change a fragment you point to.

Observeaudit only
Extendfill in chosen nodes
Take overafter a diff preview

Prices and availability straight from the CMS

Variable values come from the same source as the visible offer. When a value expires it is withdrawn, never frozen.

Regression and incident detection

Control scans compare the meaningful parts of each page. A missing, duplicated or drifting template raises an alert.

Version history, rollback, kill switch

Every publication is a version with a diff. Roll it back in one click, and use the kill switch per site or per template.

Full export, no lock-in

Paid plans export the whole graph. After cancelling you get a one-off full export with a manifest: rules, data, freshness dates and a list of values that still need upkeep.

For agencies

All your clients on one incident board

A theme update at one client should not be a surprise. You see what changed before the client calls.

  • Many sites and clients on one account, with roles and hand-over of a site to the client.
  • Incident board with the state of every site: healthy, needs attention, blocked.
  • Combined report for all clients in minutes.
  • Repeatable rollouts thanks to templates, coexistence modes with SEO plugins and rollback.

See the Agency plan

Incident boardsample view
klient-1.plHealthyLast scan: no changes.
klient-2.plIncidentProduct markup vanished after a theme update.
klient-3.plNeeds attentionTwo active sources for organisation data.
klient-4.plAwaiting approvalA new page template was detected.
klient-5.plBlockedPrice differs from the visible one, publication halted.
Combined report for last monthDownload

Illustration with sample data, not real clients.

How the WordPress plugin works The EvidMark API gives the plugin a signed graph and rules, the CMS provides prices and availability, and the plugin generates JSON-LD locally into the public HTML. If the API fails, the plugin uses the last valid version from its cache. API EvidMark signed graph and rules CMS prices, availability WordPress plugin JSON-LD generated locally pages never wait for the SaaS Public HTML application/ld+json Cache last valid version
WordPress plugin

The default rollout channel: a plugin that never slows your site

The plugin pulls the graph and rules from the API and reads variable values straight from your CMS. Rendering a page never waits for our service.

  • Local JSON-LD generationPrice and availability always match your CMS, including WooCommerce on Pro and above.
  • Resilient to failuresIf the API fails we serve the last valid version from cache. Variable data is withdrawn once it expires.
  • Coexists with SEO pluginsWe detect the owner of each field and make sure there are never two active emitters.
  • Signed responsesAPI responses are signed and expire, and keys can be revoked without reinstalling.

Not on WordPress? A JSON-LD export with a manifest is available on every plan.

Pricing

You pay for care of your site, not for single runs

A plan sets how many pages are under care. Processing costs are in the price, so you do not need your own API key.

2 months free when paid yearly

Audit (Free)

A quick check of your site's state.

$0/ mo

no card needed

  • 1 domain
  • Home page and 10 pages
  • Score and list of errors
  • Proposal preview
  • Export of the home page and 10 pages
Check for free

Start

One small site.

$25/ mo

 

  • 1 domain, 50 pages
  • Monthly control crawl
  • Full graph and complete export
  • WordPress plugin
  • Email support
Create account
14-day trial

Pro

Markup under constant supervision.

$49/ mo

 

  • 1 domain, 500 pages
  • Weekly control crawl
  • Alerts and incidents
  • Yoast and Rank Math adapters
  • WooCommerce support
  • Extended support
Create account

Business

Several domains and reports for a team.

$149/ mo

 

  • 3 domains, 5,000 pages in total
  • Weekly, priority pages daily
  • Reports and Search Console integration
  • 3 users
  • Everything in Pro
Create account

Agency

Many clients, one place of control.

$499/ mo

 

  • 25 domains, 20,000 pages in total
  • Clients and roles
  • Incident board and combined report
  • Hand a site over to a client
  • 10 users
Create account

Prices are net. The trial is 14 days of Pro once you confirm your email, no card needed. Nothing is published until you approve the first rollout.

Full refund within 14 days of the first payment. If a site has more pages than the limit, the extra pages wait in a queue and markup that is already deployed stays in place.

FAQ

Answers to common questions

Will this improve my Google rankings?

We do not promise that. Nobody reliable can guarantee rankings or search result features, and Google has been retiring some of them.

We promise something else: correct data, consistent with what is on the page, kept current, with a full history of changes. That way, programs reading your site get an accurate description of what is really there.

What exactly do you do on my site?

We check your existing structured data, propose JSON-LD with the origin of every value, and deploy it once you approve. After that we re-check the public HTML on a schedule and report disappearances, duplicates and mismatches.

We do not add anything that is not on the page. No evidence means no property.

What happens when I cancel?

You get a one-off full export with a manifest: rules, data, graphs, the freshness date and a list of values that still need upkeep.

With the WordPress plugin the stable graph stays on the page as static markup, without monitoring. Prices and availability keep being generated locally from your CMS or are switched off, never frozen.

Does it work with Yoast and Rank Math?

Yes. We detect their markup and record who owns each field. You start in observe mode. Extending fills in chosen nodes, and taking over replaces exactly one chosen fragment after a diff preview.

We never switch off other markup in bulk. After rollout we watch that there are never two active emitters.

Where is my data and is this GDPR-compliant?

The application is hosted in the EU. When you sign up you accept a data processing agreement (DPA), and deleting your account removes your data within 30 days. We publish personal data from a page only if it is visible there and you switch on a dedicated option.

The free audit only analyses publicly available pages and publishes nothing. The full rules are in the privacy policy.

Do I need WordPress?

No. The audit works for any website and you can paste the JSON-LD export yourself. The WordPress plugin is the most convenient channel though, because it reads variable data straight from the CMS.

Start with a single address

See what programs read on your site before you decide on next steps.

No sign-up and no card. Your home page and 10 more pages.