Skip to content
Surfilby Adam Hafez
Free tool

Structured data markup helper: JSON-LD schema generator

Schema markup generator: build JSON-LD for Article, NewsArticle, FAQPage, VideoObject, Organization and BreadcrumbList. Free, runs in your browser.

Runs entirely in your browser. Nothing you enter is uploaded, logged or stored.

    Key takeaways

    • Google recommends JSON-LD over Microdata and RDFa as the easiest structured data format to implement and maintain.
    • Structured data makes a page eligible for rich results but does not guarantee them.
    • Google's Article documentation lists no required properties, only recommended ones such as headline, image, datePublished and author.
    • Google says not to mark up information that is not visible to the user, even if it is accurate.
    • Everything is built in your browser, and the output is only copied when you press the copy button.

    What it takes

    • The page URL, headline and description
    • Dates in ISO 8601
    • Author and publisher names

    More tools

    All of them free, all of them browser-only.

    Browse the tools

    How to use it

    1. 1Pick the type that matches the pageOne page, one primary type. A news story is a NewsArticle; do not also declare it an Article and a BlogPosting.
    2. 2Fill the properties marked with an asteriskThe asterisk marks the fields this generator asks for before it calls the block complete. The checks below the form list whatever is still missing.
    3. 3Read the warnings, not just the outputA relative URL or a date in the wrong format produces valid JSON that fails validation later. Both are flagged as you type.
    4. 4Paste it into the page headWrap it in a script tag with type="application/ld+json", then confirm with Google's Rich Results Test on the live URL.

    Pick a type, fill the form, and this schema markup generator writes the JSON-LD as you type, with a list underneath of anything missing or malformed. Copy the block into a script tag of type application/ld+json and the page states what it is in explicit terms. It all runs in your browser.

    What the generator builds

    Google recommends JSON-LD because it is the easiest structured data format to implement and maintain. The generator covers six Schema.org types:

    • Article and NewsArticle: headline, URL, description, dates, author, publisher and image, plus an article section for news. The output includes an @id and mainEntityOfPage built from the page URL, sets dateModified to the published date if you leave it blank, and marks the page inLanguage “en” and free to read. Change inLanguage by hand if the page is not in English.
    • FAQPage: one question and answer per line, separated by a pipe.
    • VideoObject: title, description, YouTube id, upload date, duration and an optional transcript. The thumbnail, embed and watch URLs are filled in from the YouTube id.
    • Organization: name, website, logo and profile URLs for sameAs.
    • BreadcrumbList: one name and URL per line, numbered in order.

    What it checks as you type

    • Missing fields. Every field marked with an asterisk that is empty is listed. These are the generator’s own minimum set. Google’s Article documentation lists no required properties at all, only recommended ones: author, author.name, author.url, dateModified, datePublished, headline and image. Filling those is what the Article form asks for.
    • Long headlines. A headline over 110 characters gets a warning. That cap is this tool’s convention; Google gives no number, only a note that long titles may be truncated on some devices.
    • Relative or insecure URLs. The page URL, image, author URL and logo must start with https://.
    • Dates. Published, modified and upload dates must start in ISO 8601 form, such as 2026-09-25.
    • Video duration. It must be an ISO 8601 duration, such as PT12M30S.

    When nothing is missing, the list reads “Every required property for this type is present.”

    Worked example

    Choose Article, fill every field except the image, and type the published date as 25/09/2026. The generator lists two problems:

    • Image URL is required for Article.
    • datePublished should be ISO 8601, for example 2026-09-09.

    Fix both, with author name Adam Hafez and an author URL, and the author comes out as an entity rather than a bare string:

    "author": {
      "@type": "Person",
      "name": "Adam Hafez",
      "url": "https://example.com/authors/adam-hafez"
    }

    The block is only copied when you press the copy button. If the browser refuses clipboard access, the status line says so and you can select the block by hand.

    Common mistakes it catches

    • A date in local format. 25/09/2026 is valid JSON and invalid ISO 8601.
    • A relative image or logo URL, which cannot be resolved outside the page.
    • A duration written as 12:30 instead of PT12M30S.
    • An author as a plain name with no URL, when author.url is one of Google’s recommended properties.

    What it cannot check is whether the markup matches the page. Google says not to mark up information that is not visible to the user, even when it is accurate, so every value here must also appear on the page itself. For FAQPage specifically, Google stopped showing the FAQ rich result in 2026; the type stays valid, but it no longer earns an expanded result.

    Sources

    1. 1.Intro to how structured data markup works - Google Search CentralPrimary
    2. 2.Article structured data - Google Search CentralPrimary
    3. 3.Latest documentation updates: Removing documentation for the FAQ rich result feature - Google Search Central
    4. 4.Schema.org vocabulary - Schema.orgPrimary

    Common questions

    What is schema markup?

    Schema markup is structured data written in the Schema.org vocabulary that states what a page is, such as an article, a video or an organization, in explicit terms. Google uses it to understand the page and to decide eligibility for rich results.

    Should I use JSON-LD, Microdata or RDFa?

    JSON-LD. Google recommends it as the easiest to implement and maintain, and it lives in one script block rather than being threaded through the HTML.

    Does schema markup guarantee rich results?

    No. Google says structured data can make a page eligible for rich results but does not guarantee them. The markup also has to follow Google's guidelines and describe content visible on the page.

    What happens if I mark up something the page does not show?

    Google's guidelines say not to add structured data about information that is not visible to the user, even if it is accurate. Markup that breaks the guidelines can cost the page its rich result eligibility.

    Is FAQPage markup still worth adding?

    Google stopped showing the FAQ rich result in Search and removed its documentation in June 2026. FAQPage is still a valid Schema.org type, so the generator keeps it for pages that really are a list of questions and answers, but it no longer earns an expanded snippet in Google.

    How do I test the JSON-LD?

    Google recommends the Rich Results Test while you build, then the URL Inspection tool and the rich result status reports in Search Console once the page is live, to catch templating or serving problems.