AdvertiserContentArticle
AdvertiserContentArticle is an Article subtype for paid editorial: sponsored content, advertorials, branded content, native advertising. It adds no properties of its own; the useful signal is the type itself. Google's spam policies require sponsored content to be clearly marked, and using AdvertiserContentArticle plus the rel="sponsored" attribute on links is how you do that at the markup layer.
Full example of schema.org/AdvertiserContentArticle 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": "AdvertiserContentArticle",
"headline": "How Acme CDN handles Edge Function caching",
"description": "Paid partner post. Acme CDN walks through its edge cache model for Next.js 16 Edge Functions.",
"datePublished": "2026-04-09",
"author": { "@type": "Organization", "name": "Acme CDN", "url": "https://acmecdn.example.com" },
"publisher": { "@type": "Organization", "name": "Xoo Code", "logo": { "@type": "ImageObject", "url": "https://xoocode.com/logo.png" } },
"sponsor": { "@type": "Organization", "name": "Acme CDN", "url": "https://acmecdn.example.com" },
"mainEntityOfPage": "https://xoocode.com/blog/partner/acme-edge-functions",
"image": "https://xoocode.com/blog/partner/acme-edge-functions/cover.jpg",
"isAccessibleForFree": true,
"creditText": "Sponsored by Acme CDN"
}
</script>When to use it
Use AdvertiserContentArticle when a third party paid for editorial placement: brand-funded explainers, partner posts, sponsored product deep-dives. The type is independent of NewsArticle vs Article: a sponsored news piece is still AdvertiserContentArticle (it inherits from Article directly, not NewsArticle).
Disclosure best practice
Markup is not a substitute for visible disclosure. Google still requires a clear, human-readable "Sponsored", "Paid post", or "Advertisement" label near the byline. AdvertiserContentArticle is the machine-readable equivalent; it complements but does not replace the visible label. Include sponsor (the advertiser Organization) and a clear author (often the advertiser or a clearly-labelled brand author).
Minimal valid version
The smallest markup that still produces a valid AdvertiserContentArticle 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": "AdvertiserContentArticle",
"headline": "How Acme CDN handles Edge Function caching",
"author": { "@type": "Organization", "name": "Acme CDN" },
"sponsor": { "@type": "Organization", "name": "Acme CDN" },
"datePublished": "2026-04-09"
}
</script>Google rich results this unlocks
Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.
- Google docsArticle rich result (inherited) plus sponsored disclosureprimary
Common AdvertiserContentArticle 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
Marking sponsored content as plain NewsArticle
WrongNewsArticle for a paid partner postRightAdvertiserContentArticle with sponsor populatedUsing NewsArticle for sponsored content misrepresents its editorial independence and can breach Google's paid content policy. AdvertiserContentArticle is the correct machine-readable signal, paired with a visible disclosure label.
- 02
Omitting the sponsor property
WrongAdvertiserContentArticle without sponsorRightPopulate sponsor with the funding Organization (the advertiser)The whole point of this type is transparency about who funded the piece. Consumers reading this type expect to find the advertiser in sponsor. Leaving it out defeats the purpose.
Schema properties in this example
About the example data
A paid partner post on the Xoo Code blog, sponsored by Acme CDN, explaining how Acme handles Edge Functions caching.
Comments
Loading comments...