Schema markup is the most overdone and under-implemented thing in B2B SEO. Most sites deploy every type their CMS plugin offers - Event, Recipe, MedicalCondition, the lot - and skip the ones that actually move the needle for B2B SaaS. The truth is, six schema types are doing 90% of the work for AEO and Google rich results in a B2B SaaS context. Add these, validate them, and you've covered the high-value ground.
The 6 schema types that actually matter
1. Organisation
The most important schema type on your site, full stop. It tells AI engines and Google who your company is, what you do, where you operate, and what to link you to. Goes in the head of every page (or at minimum, your homepage).
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://yoursite.com/#organization",
"name": "Your SaaS Co",
"url": "https://yoursite.com",
"logo": "https://yoursite.com/logo.jpg",
"description": "One-line elevator pitch.",
"sameAs": [
"https://linkedin.com/company/your-saas-co",
"https://twitter.com/your-saas-co"
]
}2. Person (founder / key team)
For B2B SaaS, the founder or key practitioner often is the brand signal. Add a Person schema for the founder, link it back to the Organisation, include their LinkedIn under sameAs. AI engines triangulate trust signals from named individuals.
3. Service
Each core service or product line gets its own Service schema (or, for software, SoftwareApplication). Lists what it does, who it's for, and connects it back to your Organisation.
4. FAQPage
The single highest-leverage schema for AEO. Marks up Q&A content so AI engines can extract answers directly. Add it to your homepage FAQ section, your service pages, and every long-form blog post that includes a Q&A block. Critical: the on-page text must match the schema text. Google penalises mismatch.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [{
"@type": "Question",
"name": "How long does AEO take?",
"acceptedAnswer": {
"@type": "Answer",
"text": "3–6 months for meaningful citation volume..."
}
}]
}5. Article (for blog posts)
Every blog post should have Article schema with author, datePublished, dateModified, headline, and image. AI engines use these signals to assess freshness and expertise. Without dateModified, evergreen content gets aged out unfairly.
6. BreadcrumbList
Shows the page's place in the site hierarchy. Cheap to add, helps Google render breadcrumb in SERPs, and helps AI engines understand site structure. Add it to every non-homepage page.
Optional but worth it for SaaS specifically
Beyond the core six, three schema types are worth adding if you run a SaaS:
- SoftwareApplication - for your actual product page. Includes operatingSystem, applicationCategory, offers (free/paid), and aggregateRating.
- AggregateRating - pulls in average review score and review count. Only add if you have legitimate reviews (G2, Capterra, on-site testimonials). Faking these is a one-way ticket to a manual action.
- Review - individual customer reviews. Pair with AggregateRating.
For B2B SaaS with a self-serve trial or freemium tier, SoftwareApplication is high-value. For enterprise SaaS with sales-led motion, Service is usually a better fit than SoftwareApplication.
What to skip (and why most B2B sites have these by accident)
Most B2B sites are running schema types they don't need because their CMS plugin auto-deployed them. Audit and remove:
- WebSite + SearchAction - only useful if you actually have on-site search. Most B2B SaaS sites don't.
- WebPage on every URL - redundant once Article/Service/FAQPage are doing the work.
- Generic Product schema - designed for ecommerce. SoftwareApplication is the right SaaS equivalent.
- BlogPosting - Article is the modern type. BlogPosting is technically a subtype but Article gets more attention from Google.
- Event - only add if you actually run events. Otherwise it's dead markup.
Schema you don't validate becomes schema that breaks. Schema you don't need is just noise. Deploy the six, validate them, and move on.
How to validate (and what to do when it breaks)
Two tools, used every time:
- Schema.org Validator - strictest check. Catches structural errors and unrecognised properties.
- Google's Rich Results Test - tells you whether Google recognises your markup and whether it'll generate rich results.
For high-value pages, run both monthly. For the rest, run after every CMS update. Plugins frequently break schema in silent updates - don't trust their dashboard, trust the validators.
When schema breaks, the symptoms aren't obvious. Rankings don't drop overnight. Rich results disappear from SERPs. AI citations stop. By the time you notice, it's been broken for weeks. Run validators on your top 10 pages monthly.
Deployment tips
- Always JSON-LD, never microdata or RDFa. JSON-LD is what Google recommends and what AI engines parse most reliably.
- Place in
<head>, not body. Some platforms put it at the bottom of the page - fine, but head is the convention. - One
@graphobject per page - combine multiple types (Organisation + WebPage + Article + FAQPage) into one JSON-LD block with a@grapharray. Cleaner than four separate scripts. - Use
@idto link types - so the Article references the Person who wrote it and the Organisation that published it. Builds the entity graph AI engines triangulate from. - Don't fabricate aggregateRating - if you don't have real reviews, leave it off. Faking it can trigger a manual action, and AI engines cross-check against external review sites.