WriteAction
WriteAction is a CreateAction subtype for authoring content. Properties: inLanguage (Text / Language) and the legacy language. Use inherited result to point at the CreativeWork produced.
Full example of schema.org/WriteAction json-ld markup
The markup is verified as valid with Rich Results Test from Google.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WriteAction",
"agent": { "@type": "Person", "name": "Sam Xoo" },
"inLanguage": "en",
"result": { "@type": "BlogPosting", "headline": "Schema.org parity: April 2026" },
"actionStatus": "https://schema.org/CompletedActionStatus"
}
</script>Minimal valid version
The smallest markup that still produces a valid WriteAction entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WriteAction",
"agent": { "@type": "Person", "name": "Writer" },
"inLanguage": "en"
}
</script>Google rich results this unlocks
WriteAction is a structural type. It does not produce a rich result on its own.
Its value comes from combining it with a primary type whose markup earns a rich result (Article, Product, Event, and so on). WriteAction becomes the trunk that the primary type branches off viamainEntityorbreadcrumb. Include it on every page as the backbone of your markup.
Common WriteAction mistakes
Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.
- 01
language instead of inLanguage
Wrong"language": "en"Right"inLanguage": "en"inLanguage is the preferred BCP-47 field.
Schema properties in this example
Also mentioned in 1 other example
WriteAction also appears in ProfilePage. See the full WriteAction schema page for every reference.
About the example data
Sam Xoo drafting the weekly Xoo Code newsletter.
Comments
Loading comments...