> ## Documentation Index
> Fetch the complete documentation index at: https://docs.schemagen.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Schema Builder: Create JSON-LD Without Writing Code

> Build and publish JSON-LD structured data for any page using SchemaGen's visual form-based editor—covering 800+ Schema.org types, no code required.

The Schema Builder is SchemaGen's visual editor for creating JSON-LD structured data by hand. Instead of writing markup directly, you fill in a guided form that maps to the full Schema.org vocabulary. When you save, SchemaGen generates valid JSON-LD and makes it ready to deploy through the Schema Delivery Network.

## Open the Schema Builder

From the dashboard, click **New Schema** in the top-right corner. This opens the Schema Builder and takes you directly to the type selector.

<Info>
  The Schema Builder is available on all plans. Free plan users can choose from Google-supported schema types only (Article, Product, FAQ, HowTo, LocalBusiness, Event, Recipe, Review, and a few others). Pro and Agency plans unlock the full Schema.org vocabulary—800+ types across every category.
</Info>

## Select a schema type

The type selector is a searchable dropdown. Type any keyword—"product", "event", "software", "job"—and matching types appear instantly. Each result shows the Schema.org type name, its parent type hierarchy, and a brief description.

<Tip>
  If you're unsure which type fits your page, search by what the page is about rather than a technical term. Searching "recipe" finds `Recipe`, searching "restaurant" finds `Restaurant` and its related subtypes like `BarOrPub` or `FastFoodRestaurant`.
</Tip>

Once you select a type, the form loads all its fields.

## Fill in the form fields

Each field in the Schema Builder is labeled with its Schema.org property name and a plain-English label. Fields are grouped into three categories:

<CardGroup cols={3}>
  <Card title="Required" icon="circle-exclamation">
    Fields that must be filled in for valid schema. Marked with a red asterisk. Saving without these fields will fail validation.
  </Card>

  <Card title="Recommended" icon="circle-check">
    Fields that are not required by Schema.org but are expected by Google for Rich Result eligibility. Filling these in improves your chances of enhanced search appearances.
  </Card>

  <Card title="Optional" icon="circle">
    Additional properties that provide more context. These can improve schema quality but are not evaluated by Google's Rich Result guidelines.
  </Card>
</CardGroup>

Field types vary by property. Text fields accept plain strings, URL fields validate that you've entered a proper URL, date fields use a date picker, and array fields let you add multiple items (such as a list of FAQPage entries or multiple images).

Each field includes a **help text** tooltip that describes what the property means in Schema.org terms and what format the value should take.

## Assign the schema to a page URL

Before saving, enter the **Page URL** this schema belongs to. This is the full URL of the page where you want the JSON-LD to appear when published through the SDN (for example, `https://example.com/products/hiking-boots`).

You can save a schema without a page URL, but it cannot be published to the SDN until a URL is assigned. You can add or update the URL later from the schema detail view.

## Save as draft or publish directly

When you're ready, use the action buttons at the bottom of the form:

* **Save as Draft** — saves the schema to your account in `draft` status. It is not delivered to your website. Use this when you want to review or validate before going live.
* **Publish** — saves and immediately pushes the schema to the SDN. The JSON-LD becomes active on the assigned page URL within seconds.

<Warning>
  Publishing is instant. If your page URL is already receiving traffic, the schema goes live as soon as you click **Publish**. Use **Save as Draft** first if you want to validate the output before deploying.
</Warning>

## The Draft → Validate → Publish workflow

For important schemas—product pages, article templates, local business listings—the recommended workflow is:

<Steps>
  <Step title="Build and save as draft">
    Fill in the form and click **Save as Draft**. The schema is saved with `draft` status and is not yet active on your site.
  </Step>

  <Step title="Open the validator">
    From the schema detail view, click **Validate**. SchemaGen runs the schema against both Schema.org requirements and Google Rich Result guidelines and returns a full report.
  </Step>

  <Step title="Fix any issues">
    Review errors and warnings from the validation report. Return to the editor to correct missing required fields or fix property format issues. See the [Validation](/features/validation) page for a full breakdown of what the validator checks.
  </Step>

  <Step title="Publish">
    Once validation passes (or you've addressed the issues you care about), click **Publish**. The schema status changes to `published` and goes live on the SDN.
  </Step>
</Steps>

## Manage your schemas

All your saved schemas appear in the **Schemas** list on the dashboard. Each schema shows its name, type, assigned URL, status badge (`draft`, `published`, or `paused`), and the date it was last updated.

From the schema list or the schema detail view, you can:

* **Edit** — reopen the builder form pre-filled with the schema's current values. Editing a published schema does not take the current version offline; changes are applied when you save and re-publish.
* **Pause** — changes status to `paused`. The schema stops being delivered by the SDN, but the record and all its data are preserved. Use this to temporarily disable a schema without deleting it.
* **Resume** — returns a paused schema to `published` status and reactivates SDN delivery.
* **Delete** — permanently removes the schema. This cannot be undone.

<Note>
  Free plan accounts can save up to 5 schemas. Pro and Agency plans have no schema limit. If you're on the Free plan and reach the limit, you must delete an existing schema before creating a new one, or upgrade to Pro.
</Note>
