What the type represents
A visible instructional process that describes a sequence of steps used to achieve a result.
Use it when
- The page's primary purpose is an actual step-by-step process
- Every marked-up step is visible
- Tools, supplies, time, and images are included only when accurate
Properties to evaluate
- @id
- name
- description
- step
- tool
- supply
- totalTime
- image
JSON-LD example
{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "How to complete an example task",
"step": [
{
"@type": "HowToStep",
"position": 1,
"name": "Prepare",
"text": "Gather the required information."
},
{
"@type": "HowToStep",
"position": 2,
"name": "Implement",
"text": "Complete the task."
},
{
"@type": "HowToStep",
"position": 3,
"name": "Verify",
"text": "Confirm the result."
}
]
}
Common mistakes
- Assuming a valid HowTo object is automatically eligible for a current Google rich result. Check the current supported-feature gallery.
- Selecting the type only because a search feature is desired.
- Publishing facts that are not visible or supported by the site.
- Creating conflicting copies of the same entity instead of using a stable @id.
- Failing to update markup when the visible page or source data changes.
Official references
Schema.org defines the vocabulary. Search platforms publish separate documentation for the structured-data features they currently support.
Entity fit for HowTo
Use HowTo only when the page visibly represents the corresponding entity or relationship. Begin with the page purpose and the entity graph, then select the most specific supported type. Do not let the available vocabulary dictate claims the page does not make.
Visible support
Every material property should be supported by visible, current, and accurate page content.
Stable identity
Use consistent identifiers when the same organization, person, place, product, service, or webpage appears across the graph.
Consumer requirements
Treat Schema.org validity and search-consumer eligibility as related but separate checks.
Deployment record for HowTo
- Syntax validation, type/property validation, consumer testing, and post-deployment inspection.
- Record the page template, generator, source fields, responsible owner, and release reference.
- Avoid publishing properties that are unsupported, hidden, stale, or inconsistent with visible content.
- Parse the deployed json-ld, validate the graph, compare it with visible content, and test any target consumer requirements.
- Schedule review when visible content, offers, ownership, locations, products, or consumer documentation changes.
Turn howto into an accountable record.
A justified type-selection decision for HowTo with visible-content support and validation evidence.