Free Tool
Schema Markup (JSON-LD) Generator
Choose your site type and page type, and generate the most comprehensive structured data Google supports for your home, category and content detail pages, as a single @graph linked together with @id.
Structured data map by site type
Each site type has three page templates: the home page introduces the organization and the site, a category page describes a list, and a detail page describes a single item (an article, product, recipe, event…). The tool generates the nodes below for each template, all together with WebPage and BreadcrumbList.
| Site type | Home page | Category | Content detail | What it means in Google |
|---|---|---|---|---|
| News site | WebSite, NewsMediaOrganization (editorial policies) | CollectionPage, ItemList | NewsArticle, Person, optional VideoObject and paywalled content | Article info, News, video |
| Blog | WebSite, Blog, Person ya da Organization | CollectionPage, ItemList | BlogPosting, Person | Article info |
| Video site | WebSite, Organization | CollectionPage, ItemList | VideoObject (Clip / SeekToAction, BroadcastEvent) | Video, key moments, LIVE badge |
| Recipe | WebSite, Organization | CollectionPage + ItemList (summary page) | Recipe (HowToStep, NutritionInformation, AggregateRating) | Recipe rich result and carousel |
| Health | WebSite, Organization / MedicalOrganization | CollectionPage (specialty) | MedicalWebPage (reviewedBy, lastReviewed), Article, MedicalCondition | Trust signal (no dedicated rich result) |
| E-commerce | WebSite, OnlineStore, MerchantReturnPolicy | CollectionPage, ItemList | Product or ProductGroup, Offer, OfferShippingDetails | Merchant listings, product snippet |
| Local business | WebSite, LocalBusiness subtype (hours, location) | CollectionPage (services) | Service | Local business info |
| Event | WebSite, Organization | CollectionPage, ItemList | Event (Place / VirtualLocation, Offer) | Event rich result |
| Job posting | WebSite, Organization | CollectionPage, ItemList | JobPosting | Google job search |
| Online course | WebSite, EducationalOrganization | CollectionPage + ItemList (summary page) | Course | Course list carousel |
| Forum / Q&A | WebSite, Organization | CollectionPage, ItemList | DiscussionForumPosting ya da QAPage | Discussions, Q&A |
| Software / app | WebSite, Organization | CollectionPage, ItemList | SoftwareApplication (MobileApplication…) | App rich result |
Current status in Google (September 2026)
Over the past two years Google has simplified many rich result types. By default the tool doesn't generate types that no longer produce a search appearance, or it clearly notes it:
- FAQ: Removed from search results in May 2026, and report and test support ended too. FAQPage remains a valid schema.org type.
- Practice problems: Search Console and Rich Results Test support ended in January 2026.
- Course info, Claim review, Estimated salary, Learning video, Special announcement, Vehicle listing: Announced in June 2025 and removed from the tools in September 2025. (Book actions are still supported.)
- Dataset: Used only in Google Dataset Search; it doesn't produce an appearance in regular search results.
- Sitelinks search box: Removed in November 2024; SearchAction on WebSite is no longer used.
- HowTo: Removed in 2023.
Sources: Google structured data gallery, Simplifying the search results page (June 2025), Removal of the FAQ rich result (Search Central updates).
Frequently asked questions
Where should I add the generated code?
Add the code to the <head> of the relevant page (or inside the body) as a single <script type="application/ld+json"> block. Generate separate code for each page type: home page code only on the home page, product code only on that product's page.
Why is everything in a single @graph?
When the organization, site, page, author and content are linked to each other with @id, search engines clearly see the relationships between entities (who published it, who wrote it, what the page is mainly about), and the same organization isn't defined again in different ways. For details, see our guide to @graph architecture.
Why is sample data filled in?
So you can immediately see what comprehensive markup looks like for the site type you chose. Replace the fields with your own information; fields you leave empty aren't written into the code at all. The “Clear this page's fields” button empties every field except the site address and name.
Can the markup include information that isn't visible on the page?
No. Google requires structured data to match the content users can see on the page: adding ratings, prices or Q&A that aren't on the page can lead to a manual action. Check the code with the Rich Results Test and the Schema Validator before publishing.
Is the information I enter saved?
The code is generated entirely in your browser and never sent to any server. The information is stored only in your own browser so you can pick up where you left off when you reopen the form.