Skip to content

HowTo Schema Generator

Add a title, optional total time and image, then list the steps of a process, and get a ready-to-paste HowTo JSON-LD script tag — with the ISO 8601 duration format Google requires checked automatically, instead of "30 minutes" silently failing to validate.

  • Add, remove and reorder steps
  • ISO 8601 duration format checked automatically
  • Warns on single-step HowTo, which is rarely eligible for rich results
  • Ready-to-paste <script> tag
  • Runs fully client-side

Generator

Built in your browser, never sent anywhere

Steps

    Add a title and at least one step to generate HowTo schema.

    How to generate HowTo schema

    1. 01

      Set the title

      A short description of the overall process.

    2. 02

      Add each step

      A short step name plus the instruction text — add as many as the process actually has.

    3. 03

      Set total time, if relevant

      Use the format prompted (like PT30M), not plain text like "30 minutes".

    4. 04

      Copy the script tag

      Paste it into the page that actually walks through these steps.

    Why "30 minutes" fails and PT30M works#

    totalTime (and Google's companion fields like prepTime and performTime) require the ISO 8601 duration format — PT30M for 30 minutes, PT1H30M for an hour and a half, P1D for one day. This is a rigid, unforgiving string format: nothing in the syntax hints at what it means unless you already know the convention, so a generator that lets "30 minutes" through as an unvalidated string produces schema that looks fine and fails silently. This tool checks the format directly and rejects anything that does not match it.

    Why single-step HowTo rarely shows a rich result#

    HowTo is built around the idea of a multi-step process — Google's own guidance and the schema itself are structured around a list of sequential steps, and a "process" with only one step is not really what the type was designed to represent. This tool still generates valid schema for a single step, since it is not technically wrong, but flags it as a warning: a genuinely single-action task is usually better served by different markup, or simply is not a good match for HowTo.

    Step names versus step text#

    Each step has two parts: a short name (a label, like "Open Command Prompt") and the longer text (the actual instruction). Only text is strictly required — a step with instruction text but no name is valid schema, just harder for whatever renders it to display as a scannable numbered list, since there is no short label to show. This tool flags a missing step name as an informational note rather than an error, since it is a quality recommendation, not a hard requirement.

    Frequently asked questions

    What format does totalTime need to be in?

    ISO 8601 duration format — PT30M for 30 minutes, PT1H30M for an hour and a half, P1D for one day. Plain text like "30 minutes" is not valid and will fail validation elsewhere even if this generator did not catch it.

    Can I generate HowTo schema with only one step?

    You can, and it will validate, but it gets flagged with a warning — HowTo is designed around a multi-step process, and a single-step version is rarely eligible for rich results. Consider whether a different schema type fits better.

    Is a step name required?

    No — only the step text is required. A missing step name is flagged as a recommendation, not an error, since it just makes the step harder to render as a labeled list item.

    Is my content sent anywhere?

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