AHTML vs schema.org JSON-LD

extends, doesn’t replace

schema.org describes entities. AHTML describes entities AND the actions you can take on them.

AHTML is not a competitor to schema.org. AHTML emits schema.org JSON-LD as part of every snapshot, and reads your existing schema.org markup to bootstrap a Level-0 snapshot with zero code changes.

Install AHTMLschema.org JSON-LD
Feature-by-feature

The honest table.

schema.org JSON-LDAHTML
Typed entities✓ (ingests schema.org)
Typed actions (with cost/reversibility)✓ (Action partial)✓ (first-class contract)
Confirmation requirement
Side-effect declarations
Freshness / TTL
Conditional fetch (ETag)
Site-wide policy
Rate-limit signaling
Auto-generated from your data layer
Emits MCP + OpenAPI + llms.txt
Signed provenance✓ (v0.2)
FormatJSON-LDJSON / compact text + JSON-LD as one emission
Pick schema.org JSON-LD when
  • You only need search-engine rich results, not agent actions.
  • You’re happy hand-writing JSON-LD for each page type.
  • You don’t need freshness, TTL, or rate-limit signaling.
Pick AHTML when
  • You want agents to take action, not just read.
  • You want JSON-LD generated from one source instead of duplicated across templates.
  • You want freshness + TTL + ETag built into the snapshot.
  • You want a site-wide manifest (<code>/.well-known/ahtml.json</code>) agents can discover first.
What they have in common
  • Both expose typed entities (Product, Article, Event, etc.).
  • Both can be embedded inline or served at a dedicated endpoint.
  • Both are open standards.

Three minutes to install. Decide for yourself.

AHTML is MIT-licensed and runs entirely inside your app. No SaaS, no per-request cost, no lock-in.

Install AHTMLScore your site (free)GitHub