JSON-LD Generator
Create schema.org structured data
Generate JSON-LD structured data for articles, products, FAQs, organisations, events, breadcrumbs and more, ready to paste into a page.
- JSON-LD
- Schema.org
- SEO
- Rich results
- Structured data
How to use JSON-LD Generator
- In Build, choose a Schema type (Article, Product, FAQPage, HowTo, Organization / LocalBusiness, Person, Event, BreadcrumbList, WebSite, SoftwareApplication, Recipe, JobPosting or VideoObject). Where there are variants, pick the exact
@type. - Fill in the form. Each field is marked Required, Recommended or Optional following Google rich-result guidance, and Load example shows a filled-in version.
- Watch the Rich results check panel for missing required or recommended properties and for malformed URLs, dates, durations, prices or currencies.
- Press Copy snippet and paste the
<script type="application/ld+json">block into your page. - To review markup you already have, switch to Validate existing, paste the JSON-LD (or the page snippet that contains it) and read which type was detected and what is missing.
How it works
Each type is described by a list of fields with a dotted path (for example offers.price), a format and a level taken from Google's structured-data documentation. The form values are assembled into a nested object: the first time a path enters a nested object it gets the right schema.org @type (Offer, PostalAddress, Person...), numbers and booleans are written as JSON numbers and booleans, and repeating items such as FAQ questions, steps, reviews or opening hours become arrays. Empty fields are left out.
Validation is plain pattern checking: http(s) URLs, ISO 8601 dates (checked against the real calendar), date-times with optional zone, durations like PT1H30M, prices with a dot decimal and no symbol, three-letter capital currency codes, 24-hour times and weekday names.
The snippet is JSON.stringify with two-space indentation, with every < written as \u003c, so text such as </script> inside a value cannot end the script element early. Validate existing parses your text as JSON (or pulls the ld+json script blocks out of HTML), follows @graph and arrays, finds each object's @type and runs the same checks, reading nested values whether they are objects, arrays or plain strings.
Limits
- Only the 14 listed type families are checked. Other
@typevalues are listed as "not checked". - Requirements follow Google's rich-result documentation, not the full schema.org vocabulary, so a property marked Optional here can still be valid and useful.
- Google no longer shows FAQ rich results for most sites, HowTo rich results at all, or the sitelinks search box; the markup is still valid schema.org.
- The checks cannot tell whether a URL exists, whether the image meets Google's size rules, or whether the markup matches what is visible on the page. Use Google's Rich Results Test for the final word.
- Entries in lists are limited to 50 and each field to 5,000 characters in a share link. Event offers, aggregate ratings and other deep structures are covered; arbitrary extra properties are not.
Privacy
Everything is built and checked in your browser. Nothing is sent anywhere, no URL you enter is fetched, and the pasted text in Validate existing is only parsed as data. A share link stores the form in the URL fragment, which browsers do not send to a server.
Frequently asked questions
Where do I put the JSON-LD on my page?
Anywhere in the <head> or <body>. Google reads it in both places. Add one script block per page type, or several blocks on the same page.
Why is my price flagged as invalid?
The price must be a plain number with a dot decimal, like 19.99. Put the currency in its own field as a three-letter code such as USD, and leave out symbols and thousands separators.
What is the difference between Required and Recommended?
Required properties must be present for the page to be eligible for the rich result. Recommended ones are optional but give Google more to show. "Required if used" means the property is needed once you fill in any other field of the same group, such as an offer.
Can I paste a whole HTML page into Validate existing?
Yes. If the text contains <script type="application/ld+json"> blocks, each one is extracted and checked. Otherwise the text is treated as raw JSON.
More tools
- Clean Image: Inspect and remove hidden image metadata
- JWT Decoder: Decode and verify JSON Web Tokens
- Diff Checker: Compare two texts line by line
- JS Runner: Run JavaScript and TypeScript in your browser
- JSON Formatter: Format, validate and minify JSON
- Encode / Decode: Base64, URL, HTML entity and hex
- Hash Generator: MD5, SHA and HMAC of any text
- UUID Generator: Generate UUID v4 and v7 in bulk
- Timestamp Converter: Unix time ↔ human dates
- Regex Tester: Test regular expressions live
- URL Parser: Break a URL into its parts
- HTTP Status Codes: Look up any HTTP status code
- MIME Type Lookup: File extension ↔ MIME type
- Password Generator: Strong random passwords and passphrases
- Random String Generator: Random tokens, IDs and keys
- Slug Generator: Turn titles into URL slugs
- Case Converter: camelCase, snake_case, Title Case and more
- Word Counter: Count words, characters and reading time
- JSON to TypeScript: Generate TypeScript types from JSON
- JSON Diff: Compare two JSON documents structurally
- JSON to SQL: Turn JSON arrays into SQL inserts
- YAML ↔ JSON: Convert between YAML and JSON
- XML ↔ JSON: Convert between XML and JSON
- CSV ↔ JSON: Convert between CSV and JSON
- CSV Viewer: View, sort and filter CSV files
- SQL Formatter: Format and beautify SQL queries
- cURL ↔ Fetch: Convert cURL commands to fetch and back
- Markdown Editor: Write Markdown with a live preview
- Text Cleaner: Remove duplicate lines, empty lines and extra spaces
- Find & Replace: Find and replace in any text
- Cron Expression Builder: Build and explain cron schedules
- User-Agent Parser: Identify browser, OS and device from a user agent
- HTTP Headers Inspector: Paste response headers and get them explained
- JWT Generator: Create and sign test JSON Web Tokens
- Certificate Inspector: Decode PEM certificates and keys
- Meta Tag Inspector: Check a page's SEO and social tags
- UTM Builder: Build campaign URLs with UTM parameters
- URL Cleaner: Strip tracking parameters from links
- Robots.txt Generator: Create and test a robots.txt file
- Sitemap Generator: Create an XML sitemap from a list of URLs
- Image Compressor: Shrink JPEG, WebP and AVIF images in your browser
- Image Resizer: Resize images by pixels, percentage or to fit a box
- Image Converter: Convert between PNG, JPEG, WebP and AVIF
- Image to Base64: Encode images as Base64 data URIs and decode them back
- SVG Optimizer: Minify and sanitize SVG files
- Favicon Generator: Make favicon.ico, Apple and Android icons from an image or emoji
- Color Converter: HEX, RGB, HSL, OKLCH and contrast checks
- Number Base Converter: Binary, octal, decimal, hex and float bits
- IP / CIDR Calculator: Subnets, masks and IP ranges for IPv4 and IPv6
- JSONPath Query: Query JSON with JSONPath expressions
- JSON Schema Validator: Validate JSON against a schema, or generate one
- Semver Checker: Check versions against semver ranges
- chmod Calculator: Unix permissions: rwx ↔ octal
- .env Diff: Compare and validate .env files
- TOTP Generator: Generate and verify 2FA codes
- String Escaper: Escape and unescape strings for any language
- Unicode Inspector: See every character, code point and hidden symbol
- Mock Data Generator: Generate realistic fake data
- QR Code Generator: Create QR codes for links, Wi-Fi and contacts
- Lorem Ipsum Generator: Placeholder text in paragraphs, sentences or words
- Date Calculator: Date differences, business days and durations
- Unit Converter: Convert bytes, lengths, weights, temperatures and more
- Query CSV with SQL: Run SQL queries on CSV files
- PDF Merge & Split: Merge, split, reorder and rotate PDFs
- PDF Metadata Cleaner: See and remove hidden PDF metadata
- Office Metadata Cleaner: Remove author and revision data from Word, Excel and PowerPoint
- Images to PDF: Combine images into one PDF
- Image Editor: Crop, rotate, resize and adjust images
- Encrypt / Decrypt Text: Encrypt text with a passphrase (AES-GCM)
- SSH Key Generator: Generate Ed25519 and RSA SSH keys locally
- Email Header Analyzer: Trace an email's path and check SPF, DKIM and DMARC
- JSON to Code: Generate Go, Python, Rust, Java, C# and Kotlin models from JSON
- docker run ↔ Compose: Convert docker run commands to docker-compose and back
- Color Palette Extractor: Pull the dominant colours out of any image
- Password Strength Checker: How long would your password take to crack?
- SPF / DKIM / DMARC Checker: Validate and explain email DNS records
- Kubernetes YAML Checker: Validate and explain Kubernetes manifests
- .gitignore Generator: Build a .gitignore from presets
- CSP Builder: Build and check a Content-Security-Policy
- Open Graph Image Generator: Make 1200×630 social preview images
- CSS Generator: Gradients, shadows, clamp() and more
- Time Zone Meeting Planner: Find meeting times across time zones