b2KIT

Rich Result Type Tester

Paste JSON-LD or Microdata and see how rich results render for recipes, products, events, FAQs, and how-to cards.

Tested tool guide Tested browser tools Checked August 16, 2026

What Rich Result Type Tester does, with a checked example

You paste the structured data from your page, either a JSON-LD script block or the HTML that carries the Microdata attributes, and the tool detects the schema.org type it declares, one of recipe, product, event, FAQ page, or how-to, and renders the preview card for that type. The surprise most people hit: a clean preview means the markup parses into a recognizable type, not that Google will show the result. Google runs its own eligibility checks, which change over time and which no third-party preview replicates.

Worked example

A concrete input and expected output from the current implementation.

Input

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Bamboo Desk Organizer",
  "image": "https://example.com/images/bamboo-organizer.jpg",
  "description": "Three-tier organizer with a drawer and cable slot.",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.5",
    "reviewCount": "12"
  },
  "offers": {
    "@type": "Offer",
    "price": "129.00",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock"
  }
}

Expected output

The tool detects @type Product, parses the nested AggregateRating and Offer, and renders a product preview card: name 'Bamboo Desk Organizer', a 4.5-star rating, '12 reviews', price $129.00, and availability 'In stock'. The description fills the card's text slot, the image URL its image slot.

The card is built from the markup: ratingValue 4.5 and reviewCount 12 from aggregateRating, price 129.00 with currency USD from offers, and InStock mapped to 'In stock'. A missing or misspelled property leaves its slot empty rather than failing the parse.

How the result is produced

1

Type detection and field mapping

The parser scans the pasted text for a schema.org type declaration: the @type property in JSON-LD or the itemtype attribute in Microdata. It reads the properties that type expects, including nested ratings and offers, and maps each onto the preview template. A property the template expects but the markup lacks leaves its slot empty, so a half-blank card usually means a misspelled name or a wrongly nested object.

2

Preview is an approximation of search rendering

The card mimics the layout conventions search engines use for that rich result type: star rating and review count for products and recipes, an expandable question list for FAQ pages, and date and location lines for events. That rendering is the tool's model of search results, not a check against a search engine's current eligibility rules, which differ between engines and change over time.

Good uses

  • Before publishing a recipe, product, or event page, paste the JSON-LD you just wrote and confirm the preview card shows every field you intended, especially rating, review count, price, and date.
  • When migrating a page from Microdata to JSON-LD, or the reverse, paste the old and new versions in turn and compare the cards. A field that disappears in one format means the migration dropped or renamed a property, which will change what search engines can display.
  • When a page used to show a rich result and no longer does, paste the current markup to see whether the type is still detected and which slots are now empty. A recent edit that renamed a property or reordered nested objects is the usual cause.

Limits and checks

  • A rendered preview is not eligibility. Whether Google shows the result depends on its own guidelines and review, which for some types is manual. A clean preview is necessary but not sufficient; run the same markup through Google's Rich Results Test for the check that actually matters.
  • Some rich result types are restricted or retired. FAQ rich results, for example, have been limited since 2023 to well-known, authoritative government and health websites, so a FAQ card rendering correctly does not tell you whether your site will get the expandable result. Confirm the type is still supported before relying on it.
  • The preview covers only the snippet you paste. Microdata properties are read from the HTML you supply, so a fragment instead of the full element can drop itemprop values that exist on the live page. The card is only as complete as its input.

Common questions

The preview looks perfect, but my page still does not get a rich result in Google. What am I missing?

Probably nothing in the markup. The preview proves the snippet parses into a known type; Google's decision to display it depends on its own guidelines and review process, which no third-party preview replicates. Run the page's URL through Google's Rich Results Test for the check that matches its actual requirements.

Does a preview with no empty slots mean my structured data is valid?

No. A fully populated card means the fields were recognized, not that the markup conforms to schema.org or to a search engine's requirements. schema.org is a descriptive vocabulary; engines layer their own mandatory fields and policies on top. For spec-level conformance use the schema.org validator, and for Google's rules use the Rich Results Test.

References and verification

The example and behavioral notes were checked against the browser implementation. Standards and primary references below define the relevant format, formula, or platform behavior.

Related Tools