# Audit & generate JSON-LD schema markup for SEO with Gmail: n8n workflow

> Started by someone submitting a form, and works across Gmail. It hands the judgement calls to OpenRouter. 9 steps: a working afternoon to understand properly.

Source: https://millionrounds.com/workflow/audit-and-generate-json-ld-schema-markup-for-seo-with-gmail (Millionrounds; every figure on the page links to its filing or article)

[Automation library](https://millionrounds.com/workflows) · [Content](https://millionrounds.com/workflows?category=Content#library)

# Audit & generate JSON-LD schema markup for SEO with Gmail

Started by someone submitting a form, and works across Gmail. It hands the judgement calls to OpenRouter. 9 steps: a working afternoon to understand properly.

Medium Calls a model: OpenRouter

[Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Faudit-and-generate-json-ld-schema-markup-for-seo-with-gmail)

**9 steps** Medium: a working afternoon

**0** Branches: places the flow splits

**0** Loops or waits

**1** Service it connects to

## The flow

Starts it 1 Model 6 Service 2

The steps in the order they run, from what starts it.

- 1 **OpenRouter** Lm Chat Open Router *Model*
- 2 **Code** Tool Code *Model*
- 3 **On form submission** Form trigger *Starts it*
- 4 **HTTP Request** Http Request Tool *Service*
- 5 **Structured Output** Output Parser Structured *Model*
- 6 **OpenRouter1** Lm Chat Open Router *Model*
- 7 **Schema Markup Agent** Agent *Model*
- 8 **Auto-fixing Output Parser** Output Parser Autofixing *Model*
- 9 **Send to your email** Gmail *Service*

## How it's built

- **Starts on:** Someone submitting a form
- **Steps:** 9
- **Size:** Medium: a working afternoon
- **Connects to:** Gmail
- **Model:** OpenRouter

## Questions

What does it need to run?

An n8n account, plus your own Gmail account, and a key for OpenRouter. You connect your own accounts after importing it; none are included.

What starts it?

It starts on someone submitting a form.

Does it use AI?

Yes. It calls OpenRouter. Model calls are billed by the provider, not by n8n.

How long does it take to set up?

Plan an afternoon. 9 steps is enough that you should read each one before running it.

How do I import it?

Copy the workflow, open a new workflow in n8n and paste. The steps appear on the canvas, ready for your own accounts.

**Before you run it**

Nothing here has been tested by us. It is somebody's working automation, read and described from its own steps. Treat the connections it wants as a list of accounts it will touch, and read the 9 steps before you point it at anything that matters.

## Run it in n8n

- **Create your n8n account** Free to start. n8n is where the workflow runs. [Create an n8n account ↗](https://millionrounds.com/n8n)
- **Download the workflow** Free with a Millionrounds account. [Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Faudit-and-generate-json-ld-schema-markup-for-seo-with-gmail)
- **Paste it into n8n** Open a new workflow in n8n and paste. Then connect your own accounts.

Stored with the author's traces removed: canvas notes, instance identifiers, saved credential names and any live document they had left behind.

## Connects to

Each opens the other workflows that use it.

[Gmail](https://millionrounds.com/workflows?service=Gmail#library)

## Workflows like it

Also content, with the same services where possible, closest in size first.

- [**Analyze competitor content performance with Bright Data MCP** 9 steps · calls a model · Gmail](https://millionrounds.com/workflow/analyze-competitor-content-performance-with-bright-data-mcp)
- [**Automate podcast creation with OpenAI and Claude** 9 steps · calls a model · Gmail](https://millionrounds.com/workflow/automate-podcast-creation-with-openai-and-claude)
- [**Convert news headlines to audio newsletters with Claude** 9 steps · calls a model · Gmail](https://millionrounds.com/workflow/convert-news-headlines-to-audio-newsletters-with-claude)
- [**Create AI video ads from product descriptions with Claude** 9 steps · calls a model · Gmail](https://millionrounds.com/workflow/create-ai-video-ads-from-product-descriptions-with-claude)
- [**Email AI Agent with OpenAI and Gmail** 9 steps · calls a model · Gmail, n8n data table](https://millionrounds.com/workflow/email-ai-agent-with-openai-and-gmail)
- [**Generate AI Twitter posts with OpenAI and Tavily** 9 steps · calls a model · Gmail](https://millionrounds.com/workflow/generate-ai-twitter-posts-with-openai-and-tavily)
