# JSON-LD Generator

> Free JSON-LD generator. Reads a page, picks the schema.org type that matches it, and writes a block grounded in what the page actually says. Validates its own output and shows you every check. Copy the script tag and paste it in. No login, no ads.

This is the Markdown copy of https://usesuperflow.ai/tools/json-ld-generator, published for AI agents and scripts.

## What it does

Give it a page URL and it writes the schema.org block for that page, then runs a validator over its own output before you see it.

## How to use it

1. **Paste the page you want marked up.** The generator reads that page and nothing else. A page with real content on it produces a much better block than a thin landing page.
2. **It picks a type and writes the block.** A model chooses the schema.org type that fits the page, then fills it in using only what the page states. Anything it cannot find on the page is left out.
3. **Read the checks, then copy.** The same validator that powers our JSON-LD Validator runs over the generated block. Read what it says, then copy the script tag into your page.

## Call it directly

**HTTP:** `POST https://usesuperflow.ai/api/tools/json-ld-generator`. No API key, no account.

```bash
curl -sS https://usesuperflow.ai/api/tools/json-ld-generator \
  -H 'Content-Type: application/json' \
  -d '{"url":"example.com"}'
```

Returns `{ ok, report: { detectedType, jsonLd, jsonLdString, validation: { findings[], passed }, model } }`.

**MCP:** this tool is `generate_json_ld` on Superflow's MCP server at `https://usesuperflow.ai/api/mcp` (Streamable HTTP, no authentication). Setup for every client: https://usesuperflow.ai/tools/mcp

Limits: 10 runs per hour per IP. Allow up to 75 seconds for a response. Results are cached for 24 hours per URL; pass `"refresh": true` to run again.

## Facts

| | |
| --- | --- |
| Cost | Free. No login, no email, no ads. |
| Where it runs | On Superflow's servers. The page is fetched and read there, then an AI model writes the block. |
| AI model | Claude Opus. The generated markup is machine written and should be read before it is published. |
| Monthly cap | The tool has a monthly spend ceiling and fails closed when it is reached. That is reported as a plain message, not an error. |
| Stored data | The generated block is cached for 24 hours against the URL. Nothing else is stored. |
| Rate limit | 10 runs per hour per IP. Cached results do not count against it. |
| Grounding rule | The model is instructed to omit any property it cannot support from the page. Ratings and review counts are never invented. |
| API | POST /api/tools/json-ld-generator with a JSON body of { url }. The response carries the generated block and its validation. |

## Questions

### Can I trust markup that a model wrote?

Read it before you ship it. That is not a disclaimer, it is the workflow. The block is grounded in the text of your page, so most of it will be right, but you are the only one who can confirm that a description matches your intent or that a type is the one you meant. Structured data is a claim you are making to search engines about your own site, and it should be a claim you have read.

### Will it invent a rating or a review count?

It is instructed not to, and this is the single most important rule the tool follows. A fabricated aggregateRating is not a harmless embellishment. It is markup that contradicts the page, Google treats that as spam, and the penalty lands on the whole site rather than the one page. If your page does not state a rating, the generated block will not contain one.

### Why does it validate its own output?

Because generation and correctness are different problems. A model can produce something that reads perfectly and still miss a property Google requires, or use a date format that gets discarded. Running the checks afterwards turns that from something you find out months later into something you see before you paste.

### What if the type it chose is not the one I wanted?

Change it. The block is yours once you copy it, and the type is the first line. If a page is genuinely two things, an article that also answers questions for example, it is normal to ship two blocks. The validator will tell you if they end up contradicting each other.

### Where do I put the block?

Inside the head of the page, as a script tag with type application/ld+json. Copy the script tag button gives you exactly that. Most CMS platforms also have a field for custom head code or for schema markup, and pasting it there works the same way. It does not have to be in the head to be read, but that is the convention and it is the easiest place to find later.

### Does this cost anything?

Not for you. It costs us a few cents per run, because a model reads the page and writes the block. That is why there is a monthly ceiling on the whole tool. If you see a message saying the budget for this month is used up, nothing is broken. It means the ceiling did its job, and the tool comes back next month.

### Do you store the pages I generate for?

The generated block is cached for 24 hours against the URL, so opening the same page again does not pay for another run. Nothing else is kept. There is no account, no email, and no history.

## Related tools

- [JSON-LD Validator](https://usesuperflow.ai/tools/json-ld-validator) — Check your structured data against Schema.org and what search engines accept. Markdown copy: https://usesuperflow.ai/tools/json-ld-validator.md
- [AI Visibility Checker](https://usesuperflow.ai/tools/ai-visibility-checker) — See whether ChatGPT, Claude, and Perplexity can actually read your site. Markdown copy: https://usesuperflow.ai/tools/ai-visibility-checker.md
- [llms.txt Generator](https://usesuperflow.ai/tools/llms-txt-generator) — Generate a spec-correct llms.txt and llms-full.txt for any site. Markdown copy: https://usesuperflow.ai/tools/llms-txt-generator.md
- [robots.txt AI Checker](https://usesuperflow.ai/tools/robots-txt-ai-checker) — Test your robots.txt against every AI crawler that matters. Markdown copy: https://usesuperflow.ai/tools/robots-txt-ai-checker.md

## About

JSON-LD Generator is one of a set of free tools published by Superflow at https://usesuperflow.ai/tools. None of them require a login, an email address, or payment.

Category: structured-data.

Superflow is a website and creative-asset review tool. Its agents watch every page of a site and report what changed. See https://usesuperflow.ai.
