Add and edit schema on a page

Use the Schema manager to add Recipe, Event, Product, FAQ, Job posting and other schema to a page, with every type and field explained.

Updated 8 min read
On this page

The Schema manager adds structured data to a single post or page on top of the automatic schema. Use it when a page qualifies for a rich result type that RankKit SEO can't infer on its own: a recipe, an event, a job posting, a review or a video.

Each type has a form with the fields Google asks for. Most fields come pre-filled with variables such as %title% and %featured_image%, so a new item is often valid as soon as you add it.

Open the Schema manager

  • Block editor: click the RankKit SEO button in the editor toolbar to open the RankKit SEO panel, then choose Schema in the menu on the left (Edit SEO in the block editor).
  • Classic Editor: scroll to the RankKit SEO Schema box below the post content.

Pages built with Elementor: edit schema from the WordPress editor screen for that page.

Add schema in the block editor

The Schema section has four cards.

Schema Type

Pick a type in the Schema Type select. It has two groups:

  • Page type: Web page, Article, Blog post, News article, Product, About page, Contact page, Collection page, Profile page and more, plus No schema. The content type's default is marked "(default)", and a hint says which type is recommended for this content.
  • Rich result: Recipe, FAQ, How-to, Event, Review, Video, Course, Software application, Service, Job posting, Person and the other types listed below.

Then click Generate Schema:

  • For a page type, RankKit SEO sets the post's main schema type. The node is built automatically from the post's title, author, dates, image and content, so there are no fields to fill in.
  • For a rich result type, RankKit SEO adds a schema item pre-filled with variables. It appears under Schema on this post, where you fill in the fields it still needs.

Rich result types are added on top of the page type; they don't replace it.

Import Schema

Copy structured data from a live page. Choose Import from:

  • URL / Online page (free): enter the address and fetch it. RankKit SEO fetches that page once, from your server, and lists its JSON-LD nodes. Pick one: its title, URL, image, dates and author are remapped to this page.
  • JSON-LD code or file (Pro): paste JSON-LD or upload a .json file.

Schema Actions

  • Regenerate Schema fills the empty fields of the items you added from their defaults, then validates.
  • Validate Current runs the validator. You get the errors and warnings, and for a published post without errors, "Schema markup is deployed and active on this post", with the number of nodes.
  • Google Rich Results Test opens Google's test for the published post.

The post must be saved before you can regenerate or validate; until then the card says "Save the post to put its schema on the page and check it."

Schema on this post

Lists the items you added. Edit their fields, reorder them, switch them off or remove them, then save the post.

FAQ, How-to and table-of-contents schema also come from the RankKit SEO blocks in your content.

Add schema in the Classic Editor

  1. In the RankKit SEO Schema box, click Add schema.
  2. Pick a type from Choose a type… and click Add.
  3. Fill in the fields. Leave the variables in place where they fit, or overwrite them with fixed text.
  4. Click Validate schema to check the item.
  5. Save or update the post.

The box also has Import schema from a URL. The page's main schema type is set in the Advanced tab of the RankKit SEO box.

Item controls and status

Each item has an Output this schema toggle, Move up and Move down buttons and Remove schema. Its status shows next to it:

Status Meaning
Valid The item is output on the page.
Errors A required property is missing. Items with errors are not output.
Skipped The page already outputs this schema from a block (for example FAQ or How-to), so the item is not added twice.
Off Output this schema is switched off.

Items marked from a template come from a Pro schema template, not from this page.

Schema types and their fields

Required fields must be filled or the item is not output. Recommended fields produce a warning when empty. Default values are shown in brackets.

Article, Blog post and News article

Headline (%title%), Description (%excerpt%), Image URL (%featured_image%), Published (%date_iso%), Modified (%modified_iso%), Author name (%author%), Author URL (%author_url%).

  • Required: headline, author name.
  • Recommended: image, published and modified dates.

An Article item replaces the page's automatic Article node instead of adding a second one.

FAQ

Questions, a list of Question and Answer pairs (click Add row for more).

  • Required: each question and answer.

If the page already has FAQ schema from the FAQ block or Details blocks, this item is skipped.

How-to

Name (%title%), Description (%excerpt%), Image URL (%featured_image%), Total time (ISO 8601, e.g. PT30M), Estimated cost, Currency (USD), Supplies (one per line), Tools (one per line), and Steps, each with Step title, Instructions, Image URL and Link to step.

  • Required: name, the instructions of each step.
  • Recommended: image, total time.

Skipped if the page already has a How-to block.

Video

Title (%title%), Description (%excerpt%), Thumbnail URL (%video_thumbnail%), Upload date (%date_iso%), Video file or page URL (%video_url%), Embed (player) URL (%video_embed%), Duration (ISO 8601, e.g. PT4M30S).

  • Required: title, description, thumbnail, upload date, and either the video URL or the embed URL.
  • Recommended: duration.

The video variables read the first video in the post: YouTube and Vimeo embeds, Video blocks and [video] shortcodes.

Review

Item reviewed (%title%), Item type (Product; also Book, Movie, Course, Event, Game, LocalBusiness, Restaurant, Organization, SoftwareApplication, MediaObject, CreativeWorkSeason, CreativeWorkSeries, Episode, MusicPlaylist, MusicRecording, Recipe), Rating, Best rating (5), Worst rating (1), Review summary (%excerpt%), Reviewer (%author%), Published (%date_iso%).

  • Required: item reviewed, rating, reviewer.
  • Recommended: published date.

Recipe

Name (%title%), Description (%excerpt%), Image URL (%featured_image%), Author (%author%), Published (%date_iso%), Cuisine, Category (e.g. Dessert), Keywords, Prep time (e.g. PT15M), Cook time (e.g. PT1H), Total time, Yield (e.g. 4 servings), Calories per serving, Ingredients (one per line), Instructions (one step per line), Video URL (%video_url%), Average rating, Number of ratings.

  • Required: name, image.
  • Recommended: ingredients, instructions, total time, yield, author, average rating.

Event

Name (%title%), Description (%excerpt%), Image URL (%featured_image%), Starts, Ends, Status (Scheduled; also Postponed, Rescheduled, Moved online, Cancelled), Attendance (In person; also Online, Both), Venue name, Venue address, Online event URL, Organizer (%sitename%), Organizer URL (%siteurl%), Performer, Ticket price, Currency (USD), Ticket URL (%url%), Tickets on sale from.

  • Required: name, start date, a location (venue name or address for in-person events, online event URL for online events).
  • Recommended: end date, image, description, ticket price, organizer, status.

Course

Name (%title%), Description (%excerpt%), Provider (%sitename%), Provider URL (%siteurl%), Price, Currency (USD), Mode (Online; also On site, Blended), Workload (e.g. PT10H).

  • Required: name, description, provider.
  • Recommended: price, mode.

Software app

Name (%title%), Description (%excerpt%), Category (BusinessApplication and 13 other app categories), Operating system, Price (0 for free), Currency (USD), Screenshot or icon URL (%featured_image%), Average rating, Number of ratings.

  • Required: name, price.
  • Recommended: average rating, category, operating system.

Product

Name (%title%), Description (%excerpt%), Image URL (%featured_image%), Brand, SKU, GTIN / EAN / UPC, MPN, Price, Currency (USD), Availability (In stock; also Out of stock, Pre-order, Back order, Discontinued), Price valid until, Average rating, Number of reviews.

  • Required: name, plus a price, an average rating or a review.
  • Recommended: image, description, brand, SKU.

On WooCommerce products you don't need this item: RankKit SEO builds Product schema from the product data. See WooCommerce SEO.

Person

Name (%title%), Job title, Bio (%excerpt%), Photo URL (%featured_image%), URL (%url%), Email, Works for, Profiles (one URL per line).

  • Required: name.
  • Recommended: photo, profiles.

Service

Name (%title%), Service type, Description (%excerpt%), Image URL (%featured_image%), Provider (%sitename%), Area served, Price, Currency (USD), URL (%url%).

  • Required: name.
  • Recommended: description, provider, area served.

Job posting

Job title (%title%), Description (%post_content%), Date posted (%date_iso%), Apply before, Employment type (Full time; also Part time, Contractor, Temporary, Intern, Volunteer, Per diem, Other), Hiring organization (%sitename%), Organization URL (%siteurl%), Organization logo URL (%logo%), Fully remote, Street address, City, Region / state, Postal code, Country (e.g. US), Salary from, Salary to, Currency (USD), Salary per (Year; also Hour, Day, Week, Month).

  • Required: job title, description, date posted, hiring organization, and either an address or Fully remote.
  • Recommended: apply-before date, employment type, salary.

Custom JSON-LD

"Any JSON-LD object with an @type. Variables such as %title%, %url% and %featured_image% are replaced on output." Paste one JSON object (not a list):

{
  "@type": "Book",
  "name": "%title%",
  "url": "%url%",
  "image": "%featured_image%"
}

Variables you can use

In the Classic Editor, click Variables you can use in the Schema manager for the full list. Every title variable works, plus these schema variables:

Variable Value
%url% Page URL (canonical)
%siteurl% Home page URL
%featured_image% Featured or social image URL
%logo% Site logo URL
%date_iso% Publish date (ISO 8601)
%modified_iso% Last modified (ISO 8601)
%author_url% Author archive URL
%post_content% Post content as plain text
%video_url% First video in the post
%video_embed% Embed URL of the first video
%video_thumbnail% Thumbnail of the first video
%cf:field_name% Custom field value (Pro)

Check the result

Click Validate Current in the block editor, or Validate schema in the Classic Editor. You get either "Valid" with a count of recommendations, or the number of errors and warnings. Show final JSON-LD shows the exact output, including Other nodes on the page from the automatic schema. Use the Google Rich Results Test link to test the published page with Google. More in Check and import schema.

FAQ

Why isn't my schema item on the page?

It has errors, it is switched off, or it was skipped because a block already outputs the same type. The status next to the item tells you which. Fix the required fields marked in the validator and update the post.

Can I add two items of the same type?

Yes, for most types. Article-type and Product items are the exception: they merge into the page's single article or product node instead of adding a second one.

Do variables update when I edit the post?

Yes. Variables are replaced each time the page is output, so a changed title, featured image or modified date is reflected without editing the schema item.

Was this page helpful?

Still need help?

Email us with your WordPress and RankKit SEO versions and what you tried. Pro customers get priority replies.

Contact support