Skip to content

Course Schema Generator

Fill in a course's name, description and provider, and get a ready-to-paste Course JSON-LD script tag — this tool treats description as required, not optional, because Google's own guidance specifically requires it for Course, unlike the "recommended but not required" treatment description gets almost everywhere else.

  • Description required, matching Google's Course-specific rule
  • Provider correctly nested as an Organization
  • Optional AggregateRating, validated as a pair
  • Ready-to-paste <script> tag
  • Runs fully client-side

Generator

Built in your browser, never sent anywhere

    Fill in the required fields to generate Course schema.

    How to generate Course schema

    1. 01

      Fill in name, description and provider

      All three are required — description in particular is a Course-specific rule.

    2. 02

      Add a rating only if it is real

      Rating value and review count must both be genuine and both set together.

    3. 03

      Copy the script tag

      Paste it into the page that actually describes this course.

    Why description is required here specifically#

    Across most schema types on this site — Article, Product, Event — a description is a soft recommendation, flagged with a warning if missing but not blocking the schema from generating. Course is a deliberate exception: Google's structured data guidelines list description as a required field for Course specifically, and omitting it can mean the schema does not qualify for Course rich results at all. This tool treats it as a hard requirement rather than the usual warning, to match that specific rule rather than applying the same soft default everywhere.

    Why the provider is a nested Organization, not a plain string#

    A course always belongs to some issuing body — a university, a bootcamp, an individual instructor — and schema.org models that as a full Organization object nested inside the course, with its own name and, optionally, a sameAs link back to the provider's own official site or profile. A flat "provider" string would tell a reader who offers the course but give a search engine nothing structured to connect it to.

    The same rating honesty rule as Product schema#

    Course ratings follow the identical logic to this site's Product Schema Generator: aggregateRating has to reflect genuine, verifiable reviews, never a number invented to show stars in search results. Rating value and review count are required together specifically so a single, unaccompanied made-up number cannot slip through — if there are no real reviews yet, the honest move is leaving both fields empty.

    Frequently asked questions

    Why is description required for Course but optional for other types?

    Google's structured data guidelines specifically list description as required for Course rich results, unlike Article or Event where it is a recommendation. This tool enforces that as a hard requirement to match the actual rule for this type.

    Why is the provider a nested object instead of a plain name?

    Because schema.org models the provider as a full Organization object — with its own name and an optional link back to its official site — giving search engines something structured to connect the course to, rather than just a display string.

    Can I add a rating without real reviews behind it?

    You can, but you should not — the same rule as Product schema applies: aggregateRating must reflect genuine, verifiable reviews, and a self-assigned rating for the sake of star display is exactly the kind of markup Google's guidelines warn against.

    Is my course data sent anywhere?

    No. The JSON-LD is assembled entirely in your browser — nothing you enter is transmitted or stored.