Skip to content
motifuse
SEO & Marketing

JSON-LD Schema Generator

Fill a short form and get a valid JSON-LD script tag for Article, WebSite, FAQ, Product, or Organization structured data.

  • Free public tool
  • No sign-up for this tool
  • Processing clearly labeled
  • Instant results

Content last reviewed

Quick Start

  1. Pick the schema type

    Choose Article, WebSite, FAQPage, Product, or Organization to match what the page is.

  2. Fill in the fields

    Enter the name, description, URL, and — for articles — the author and publication date.

  3. Copy the script tag

    Copy the generated application/ld+json block and paste it into the page's HTML.

Examples

Article schema for a blog post

The name field becomes the headline and the author is wrapped in a Person object.

Input

Type: Article · name: How to Brew Cold Coffee · description: A step-by-step cold brew guide · url: https://motifuse.com/blog/cold-brew · author: Ana Silva · datePublished: 2026-07-01

Output

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "How to Brew Cold Coffee",
  "description": "A step-by-step cold brew guide",
  "url": "https://motifuse.com/blog/cold-brew",
  "author": {
    "@type": "Person",
    "name": "Ana Silva"
  },
  "datePublished": "2026-07-01"
}
</script>

FAQ question and answer

For FAQPage, the name field is the question and the description is its accepted answer.

Input

Type: FAQPage · name: Does cold brew have more caffeine? · description: Ounce for ounce, cold brew concentrate usually contains more caffeine than drip coffee, but diluted servings are comparable.

Output

A script tag whose mainEntity is a Question named "Does cold brew have more caffeine?" with the description as its acceptedAnswer text.

About the JSON-LD Schema Generator

Structured data is how you tell search engines what a page is instead of hoping they infer it: this is an article with this author and date, this is an organization at this address, this is a question with this answer. Google's preferred format is JSON-LD — a script tag containing labeled Schema.org data — and writing it by hand means memorizing property names inside JSON syntax where one missing brace invalidates everything. This generator produces the block from a plain form.

Pick one of five schema types and the fields map onto the right properties automatically. Article turns your name field into the headline and wraps the author in a proper Person object with the publication date alongside. WebSite emits the site's name, URL, and description. FAQPage builds a question-and-answer pair — the name field becomes the question, the description its accepted answer. Product and Organization produce the basic name/description/URL entity. In every case the output is a complete <script type="application/ld+json"> block with correctly quoted, pretty-printed JSON, updated live as you type.

The honesty rule that keeps structured data safe: it must describe what is visibly on the page. Marking up FAQs the page does not show or reviews that do not exist violates Google's guidelines and can draw a manual penalty. Generate the markup, paste it, and then validate the live page with Google's Rich Results Test — eligibility for rich results is earned, and Google decides query by query whether to display them.

How to Use JSON-LD Schema Generator

  1. Select the Schema Type that matches the page: Article for posts, WebSite for the site's home page, FAQPage for a question with its answer, Product or Organization for those entities.

  2. Fill in the fields. For an Article, name becomes the headline, and author and datePublished complete the byline data. For FAQPage, put the question in name and the answer in description. Fields a type does not use are simply left out of the output.

  3. The <script type="application/ld+json"> block regenerates live in the output box. Click Copy.

  4. Paste the block into the page's HTML — the head is conventional, but Google reads it anywhere in the document.

  5. After the page is live, validate the URL with Google's Rich Results Test to confirm the markup parses and the page is eligible.

Key Features

  • Five schema types

    Article, WebSite, FAQPage, Product, and Organization — the types behind the most common rich-result formats.

  • Correct property mapping

    Fields land on the right Schema.org properties per type: headline and a nested Person author for articles, a Question/Answer structure for FAQs.

  • Always-valid JSON

    The output is serialized by the browser's JSON engine, so quoting and escaping are correct by construction — no hand-typed syntax errors.

  • Ready-to-paste script tag

    The block arrives wrapped in script type="application/ld+json", pretty-printed for readability.

  • Live regeneration

    Changing the type or any field rebuilds the output instantly.

When to Use JSON-LD Schema Generator

  • Article rich results

    Add headline, author, and date markup to blog posts and news pages.

  • Site identity

    Give the home page WebSite or Organization markup that feeds knowledge-panel style information.

  • FAQ markup

    Mark up a question-and-answer section so it is eligible for expandable FAQ results.

  • Learning the format

    See how form values map to Schema.org properties before writing more elaborate markup by hand.

How It Works

The generator keeps a base object with the @context (schema.org) and your chosen @type, then merges in the properties that type uses. Article maps the name field to headline and nests the author as a Person; WebSite uses name, url, and description; FAQPage wraps your name and description into a mainEntity containing one Question with an acceptedAnswer; Product and Organization take the generic name, description, and url. The object is serialized with the browser's JSON engine using two-space indentation and wrapped in the script tag.

When a search engine crawls the page, it parses the block, checks the properties against the requirements for that type, and — if the page qualifies — considers it for rich-result treatments like article cards or FAQ dropdowns. Validation makes a page eligible; Google decides per query whether the enhanced display actually appears.

Supported Formats and Options

Formats

  • JSON-LD script tag

    A script element with type application/ld+json containing pretty-printed Schema.org markup — the structured-data format Google recommends.

Options

  • Schema Type

    Article, WebSite, FAQPage, Product, or Organization — controls which properties the output includes.

  • name / description / url

    The core fields used by every type (as headline and answer text where the type requires it).

  • author / datePublished

    Used by the Article type; ignored by the others.

Common Errors and Troubleshooting

Common errors

  • Rich results do not appear despite valid markup

    Validation is eligibility, not entitlement. Google chooses when to show enhanced results based on site quality and query context, and new markup can take weeks to surface. Confirm with the Rich Results Test and give it time.

  • Product markup flagged as incomplete

    Product rich results generally require properties this form does not collect — offers with price, availability, ratings. The generated block is a valid starting point; add those properties to the JSON by hand before expecting shopping-style treatment.

  • Author or date missing from the output

    Those properties are only emitted for the Article type. For other types they are intentionally omitted, because the schema does not use them in that shape.

Troubleshooting guide

Checking your structured data end to end

  • Validate the live page, not just the snippet: paste the published URL into Google's Rich Results Test. It confirms both that the JSON parses and that Google can actually reach the page and see the block.
  • View source to confirm placement: the script tag must be present in the served HTML or rendered DOM. If your framework strips unknown script tags, use its designated mechanism for injecting raw script content.
  • Mismatch warnings: if the test reports content mismatches, the markup describes something the visible page does not show — fix the page or the markup so they agree.
  • Multiple blocks: a page can carry several JSON-LD blocks (say, Organization plus Article). Duplicated blocks of the same type with conflicting values, however, confuse parsers — keep one per type.

Limitations and Important Notes

Each type emits its core properties only: no images, publisher logos, prices, ratings, or breadcrumbs, which some rich-result formats require — treat the output as a correct skeleton to extend rather than exhaustive markup. FAQPage produces a single question-and-answer pair per generation; for a multi-question page, generate the block and duplicate entries inside the mainEntity array by hand. The form fields are shared across types, so fields a type does not use are ignored rather than hidden. The tool does not validate against Google's per-type requirements — the Rich Results Test remains the authority.

Privacy and Data Processing

Everything you type stays in your browser; the form values and generated markup are never uploaded or stored by the tool. The markup only becomes public when you paste it into your own site.

Tips and Best Practices

Practical tips

  • Only mark up content that is visibly on the page — invisible or exaggerated markup violates Google's guidelines.

  • Validate the published URL with Google's Rich Results Test after deploying.

  • Use full ISO dates (like 2026-07-01) in datePublished for unambiguous parsing.

  • Extend the generated skeleton with type-specific properties (images, offers) when chasing a specific rich-result format.

  • Keep one JSON-LD block per schema type on a page to avoid conflicting declarations.

Best practices

Structured data that earns and keeps rich results

Match the type to the page honestly. The question to ask is "what is this page?", not "which rich result do I want?" — Article for posts, FAQPage only for pages that visibly show the questions and answers, Product only where a product is actually offered. Markup that flatters the page beyond its content is the specific thing manual penalties target.

Treat the generated block as the foundation. Google's per-type documentation lists recommended properties beyond the core — an image for articles, offers for products — and adding them raises the odds of the enhanced display. Paste the block, then extend it in place.

Re-validate on change. Structured data silently drifts out of date when pages are edited — the datePublished stays frozen, the author changes, the FAQ answer is rewritten on the page but not in the markup. A periodic pass with the Rich Results Test keeps the markup and the page telling the same story.

Technical Details

The schema object is built client-side per type and serialized with JSON.stringify at two-space indentation, so string escaping is handled by the JSON engine rather than templates — quotes in your text cannot break the output. Article nests the author as a Person object; FAQPage nests a Question with an acceptedAnswer Answer object. The output textarea is read-only with a copy button. No requests are made with your data.

Comparison

What each type generates

TypeProperties emittedTypical rich result
Articleheadline, description, url, author (Person), datePublishedArticle cards, top stories
WebSitename, url, descriptionSite-level identity
FAQPageone Question with acceptedAnswerExpandable FAQ dropdowns
Productname, description, urlProduct results (needs offers added)
Organizationname, description, urlBrand knowledge panels

Who Is This For?

Site owners and marketers adding their first structured data without learning Schema.org's vocabulary; developers who want a correct JSON-LD skeleton to extend; and SEO practitioners producing quick markup drafts during audits. If your pages have never had structured data, the Article and Organization types are the highest-value starting points.

Frequently Asked Questions

Does JSON-LD improve rankings?

Not directly — structured data is not a ranking factor. It makes pages eligible for rich results (article cards, FAQ dropdowns, product details), which occupy more space in results and typically earn better click-through. The traffic benefit is real; the mechanism is presentation, not position.

Where do I put the script tag?

Anywhere in the HTML — the head is conventional, but Google parses JSON-LD in the body too. It needs to be present in the served or rendered document; it is never visible to users.

Why is my valid markup not producing rich results?

Validation makes you eligible; Google decides per query whether to show the enhanced display, weighing site quality and relevance. New markup can also take weeks to be recrawled and considered. Keep it truthful and give it time.

Can I mark up an FAQ that is not shown on the page?

No — Google's guidelines require structured data to reflect visible page content, and invisible FAQ markup is a textbook cause of structured-data penalties. Mark up only questions and answers a visitor can actually read.

How do I add more than one FAQ question?

Generate the block, then duplicate the Question object inside the mainEntity array by hand — it is an array precisely so it can hold several. Keep each question and answer matching the page text.

What extra properties does Product markup need?

For shopping-style rich results Google generally expects an offers object with price and availability, and often aggregateRating and image. The generated block gives you the valid outer structure; add those properties per Google's Product documentation.

Find this useful? Share it.