Only 15 of 54 Martech Pricing Pages Emit Offer Schema. Two of Them Hide the Price Everywhere Else.
By Priya Raman, AI SEO, GEO & Martech Analytics. Last updated: 2026-08-16
When we published the pricing transparency audit, the most common response was: what about structured data? Fair question. Here is the answer.
How many martech pricing pages emit Offer schema?
We took the pricing pages already captured for the same 54 vendors, both the served HTML fetched without JavaScript and the rendered DOM from headless Chromium, and parsed every application/ld+json block. We walked nested objects, because a price usually sits inside Product.offers or SoftwareApplication.offers rather than at the top level, and recorded every schema type each vendor emits.
| Structured data on the pricing page | Vendors | Share |
|---|---|---|
Offer, AggregateOffer or a price specification |
15 | 27.8% |
Product or SoftwareApplication with no offer |
1 | 1.9% |
| No pricing structured data | 38 | 70.4% |
Under three in ten. The pricing transparency audit found 31 of 54 vendors expose a real price in served text; this finds 15 expose one as data. The two sets overlap heavily but not completely, and the exceptions are the interesting part.
Which vendors emit Offer schema, and what do they emit?
The fifteen, with the types found: Close (Product, AggregateOffer, Offer, UnitPriceSpecification), HubSpot (Product, SoftwareApplication, Offer, UnitPriceSpecification), Hootsuite and Sprout Social (SoftwareApplication, AggregateOffer, Offer, UnitPriceSpecification), Frase (SoftwareApplication, Offer, UnitPriceSpecification), Regie.ai (Product, Offer, UnitPriceSpecification), Apollo (OfferCatalog, Offer, PriceSpecification), Lusha and Jasper (SoftwareApplication, Offer, PriceSpecification), Klaviyo and Customer.io (OfferCatalog, Offer), Anyword (Product, Offer), Taplio (SoftwareApplication, Offer), Dreamdata (Offer), Livestorm (SoftwareApplication, AggregateOffer, PriceSpecification).
Close, HubSpot, Hootsuite and Sprout Social emit the fullest shape: a product, an aggregate offer for the range, individual offers per tier, and a unit price specification that says per what. That is what a machine needs to answer "how much does X cost per seat per month" without inference.
Want to put this into practice?
Reachium automates LinkedIn outreach, content publishing, and inbox management in one platform.
Start Free →Which vendors publish a price only in the schema?
Two. HubSpot's marketing pricing page, as our first audit found, is 73KB of served HTML with not one currency figure in its visible text; the prices appear only after JavaScript runs. But its JSON-LD carries Offer and UnitPriceSpecification objects, so a crawler that parses structured data and never renders the page still gets a price. Lusha's page behaves the same way: no price in served text, an Offer with a PriceSpecification in the schema.
That is a better position than the vendors whose page has neither, and it is worth naming as the correct fix for the rendering problem. If your pricing table is a client-side component, the schema block is the thing that keeps the price legible to systems that do not run your JavaScript.
Which vendors emit nothing?
Thirty-eight, and the list is most of the corpus: Salesforce, Pipedrive, Zoho CRM, Copper, Mailchimp, ActiveCampaign, Braze, Iterable, Outreach, Salesloft, Lemlist, Instantly, Smartlead, Clay, Cognism, Seamless.ai, Ahrefs, Semrush, Surfer, Clearscope, MarketMuse, Amplitude, Mixpanel, Heap, PostHog, HockeyStack, Copy.ai, Writesonic, Typeface, Buffer, Loom, Vidyard, Demio, 11x, Artisan, AiSDR, Qualified and Relevance AI. ZoomInfo emits a Product object with no offer attached, which describes the product and says nothing about what it costs.
Some of these vendors publish no price anywhere and have nothing to mark up. But Pipedrive, Mailchimp, Semrush, Ahrefs, Surfer, Amplitude, Mixpanel, PostHog, Writesonic, Buffer, Loom and Vidyard all print prices plainly on the page and emit no structured version of them. That is not a pricing strategy. It is a template that never got the schema block.
Why does Offer schema matter now?
Because it is the one channel where a price is unambiguous. Text says "$59," and a parser has to work out per what, in which currency, on which billing cycle. UnitPriceSpecification says price: 59, priceCurrency: USD, unitText: per user per month, billingDuration: P1Y. Answer engines fielding "how much does X cost" prefer the second, and Google's own documentation treats Offer as the way to state a price on a page. Our structuring guide makes the same argument for facts generally, and price is the fact buyers ask about most.
It also happens to be a five-line addition to a template, which is why the 70% figure is more surprising than the 31-of-54 visible-text figure. Not printing a price is a decision. Not marking up the price you already print is an oversight.
Want to put this into practice?
Reachium automates LinkedIn outreach, content publishing, and inbox management in one platform.
Start Free →What are the limits of this audit?
The pages were captured on 2026-08-15 and 2026-08-16 and could have changed since. We parsed JSON-LD only; a vendor using microdata or RDFa for pricing would be missed, though that is rare in 2026. Presence of an Offer type does not mean the offer is complete or accurate, and we did not validate the values inside; the audit records whether the vendor emits the structure. Per-vendor types are in the data file published alongside this piece.
FAQ
How many martech vendors use Offer schema on their pricing page?
15 of the 54 audited (28%) emit Offer, AggregateOffer or a price-specification type in JSON-LD. 38 emit no pricing structured data at all.
Which vendors publish a price in schema but not in visible text?
HubSpot and Lusha both emit Offer schema on pricing pages whose served visible text contains no price; their prices render only via JavaScript.
Which martech vendors emit the most complete pricing schema?
Close, HubSpot, Hootsuite and Sprout Social each emit Product or SoftwareApplication with AggregateOffer, per-tier Offer and UnitPriceSpecification.
Which vendors print prices but emit no schema for them?
Among others: Pipedrive, Mailchimp, Semrush, Ahrefs, Surfer, Amplitude, Mixpanel, PostHog, Writesonic, Buffer, Loom and Vidyard.
Why use UnitPriceSpecification rather than just Offer?
UnitPriceSpecification states the unit and billing period explicitly (per user, per month, billed annually), which removes the inference a parser otherwise has to make from text.
Sources
- Schema.org: Offer
- Schema.org: UnitPriceSpecification
- Google Search Central: Product structured data
- HubSpot marketing pricing
GTMStack publishes original audits of the AI marketing stack. If you want the next one when it lands, the newsletter is the place to get it.
