In short. Keep labels such as Step 1 and Directions outside the recipeInstructions text values.
Definition:
recipeInstructionsshould contain the instructions for making the dish. Google says to keep labels and other text such as “Directions”, “Watch the video”, and “Step 1” outside the structured data value.
Key facts
- Google's Recipe structured data documentation defines
recipeInstructionsas the steps to make the dish. - A
recipeInstructionsvalue can useHowToStep,HowToSection, or text. Google recommendsHowToStepfor explicitly specifying individual steps. - When a single text block or repeated text values are used, Google attempts to split the content into individual steps.
- Google says its parser tries to remove section names, step numbers, keywords, and other material that can appear in recipe step text.
- The additional guideline is to include only text on how to make the dish. The labels “Directions”, “Watch the video”, and “Step 1” belong outside the structured data.
What belongs in the text value?
The text property of a HowToStep is the instruction itself. Google gives this contrast:
{
"@type": "HowToStep",
"text": "Heat oven to 425°F."
}
The same documentation marks "Step 1. Heat oven to 425°F." as not recommended. The label is useful as a display heading or list marker in the page's visible recipe, but it is extra text in the marked-up instruction. Google also names “Directions” and “Watch the video” as phrases to specify outside structured data.
How does Google handle a text block?
Google documents three main forms for recipeInstructions: HowToStep, HowToSection, and text. A text value can contain one or more steps. Repeated text values are concatenated into one block, after which Google attempts to split that block into individual steps. The parser tries to find and remove section names, step numbers, keywords, and other material that can incorrectly appear in recipe step text.
This automatic handling is a reason to make the structure explicit when the recipe has separate steps. A HowToStep object gives each instruction its own text value. The Google example uses a short step name such as Preheat alongside the instruction text, so the name and the instruction have separate fields.
What does Schema.org define?
Schema.org describes HowToStep as a step in instructions for achieving a result and as an ordered list with HowToDirection or HowToTip items. Its HowToStep definition therefore supplies the vocabulary behind the step object, while Google's recipe page supplies the search documentation for the recipeInstructions property.
For a step written with text, keep the value as the full instructional sentence or sentences. If a recipe needs a direction or tip as a separate item, the vocabulary provides HowToDirection and HowToTip items. Neither use turns a display label into instructional text.
How should you check a recipe markup block?
Find the recipeInstructions property in the JSON-LD, then inspect each HowToStep.text value. Remove a leading label, a section heading, and calls to watch a video from that value. Keep the cooking action and its relevant detail. For example, the recommended form is:
"recipeInstructions": [{
"@type": "HowToStep",
"text": "Heat oven to 425°F."
}]
If the page uses one text block, check that it contains only the instructions and that the boundaries between steps are clear. Google recommends unambiguously specifying steps with HowToStep for best results.
Related terms
FAQ
Can the visible recipe still show “Step 1”?
Yes. Google's instruction places that phrase outside the structured data, so a visible heading or list marker can remain separate from the text value.
Should “Directions” be copied into recipeInstructions?
No. Google lists “Directions” as text to keep outside the structured data. The property should carry the directions themselves.
Should a step name contain the number?
Use a descriptive name such as Preheat when a name is supplied. Google's example keeps the step name and the instruction text in separate fields.
Sources
Check how a page reads to answer engines. Open the GEO score analyzer