Skip to content

AI Optimization (AIO / AEO)

The web is changing. A growing share of information discovery now happens through AI-powered answer engines — ChatGPT, Perplexity, Google AI Overview, Claude — rather than traditional search results. These systems do more than index pages; they interpret structure, metadata, and machine-readable signals when deciding how to use a source.

Baan is built with this shift in mind. It treats AI readability as a first-class concern, not an afterthought.

AIO (AI Optimization) — making your content structurally easy for AI systems to read, parse, and understand. Clear Markdown, semantic HTML, structured data, and machine-readable metadata.

AEO (Answer Engine Optimization) — improving the signals that help AI answer engines interpret, quote, summarize, or cite your content when it is relevant. It is a readiness practice, not a citation guarantee.

Both require the same foundation: content that is unambiguous, well-structured, and rich with contextual signals about what you’re writing about.


1. Knowledge Graph — Entity Extraction + Wikidata Enrichment

Section titled “1. Knowledge Graph — Entity Extraction + Wikidata Enrichment”

This is Baan’s most powerful AIO feature.

What it does: AI reads your article and identifies named entities — people, places, organizations, concepts, products, events. Baan then attempts to match those entities against Wikidata, the world’s largest structured knowledge base, to reduce ambiguity and attach unique identifiers where a confident match is available.

Why it matters: When an AI reads your article about “Python”, it may need context to know whether you mean the programming language or the snake. Wikidata disambiguation can provide that context: Q28865 = Python (programming language). This makes the article easier to interpret in the right context.

What gets generated: Each entity is embedded in your article page as Schema.org JSON-LD:

{
"@type": "BlogPosting",
"headline": "Getting Started with Python",
"about": [
{
"@type": "DefinedTerm",
"name": "Python",
"sameAs": "https://www.wikidata.org/wiki/Q28865",
"description": "general-purpose programming language"
}
],
"mentions": [
{
"@type": "Person",
"name": "Guido van Rossum",
"sameAs": "https://www.wikidata.org/wiki/Q19308",
"description": "creator of Python"
}
]
}

The about array contains the article’s main topics (isMainSubject: true). The mentions array lists entities referenced in passing.

How to use it:

  1. Go to Admin → Knowledge Graph
  2. Select an article
  3. Click Extract Entities
  4. Review the extracted entities, adjust isMainSubject flags if needed
  5. Save — the extracted entities are stored in frontmatter and included in the article’s JSON-LD

2. llms.txt — Machine-Readable Site Summary

Section titled “2. llms.txt — Machine-Readable Site Summary”

llms.txt is an emerging standard (similar in concept to robots.txt) that provides AI systems with a structured overview of your site: what you write about, who you are, and how to interpret your content.

How to use it:

  1. Go to Admin → Settings → AI Optimization
  2. Toggle llms.txt on
  3. Choose how to write it:
    • Manual — write your own content in a provided editor
    • Auto-generate — Baan generates a summary from your site settings and recent posts
    • AI-assisted — use your configured AI provider to draft and refine

When enabled and saved, the file is served at https://your-blog.com/llms.txt.


Article pages include machine-readable Schema.org markup unless Article schema is disabled in SEO settings:

Schema TypeWhat it signals
BlogPostingArticle type, headline, dates, author
aboutThe article’s main topics when extracted entities are present
mentionsReferenced entities when extracted entities are present
BreadcrumbListPage hierarchy for navigation context
WebSiteSite identity and search capabilities

E-E-A-T signals (Experience, Expertise, Authoritativeness, Trustworthiness) can be configured in Admin → Settings → SEO — these tell AI systems who is writing and what credentials or experience the author has.


4. Bot Management — Control AI Crawler Access

Section titled “4. Bot Management — Control AI Crawler Access”

Not all AI crawlers are the same. Some train large language models on your content. Others power answer engines that can drive traffic back to your site. Baan lets you control each bot individually.

Go to Admin → Settings → Bot Management to see 20 pre-configured bots:

AI crawlers (10): GPTBot (OpenAI), ClaudeBot (Anthropic), PerplexityBot, Google-Extended (Gemini), and others.

Search engine bots (10): Googlebot, Bingbot, and major search crawlers.

For each bot you can:

  • Allow — let the bot index your content
  • Block — prevent indexing via robots.txt rules

Apply bulk presets: Allow all, Block all, Allow search only, Allow AI only.


AI systems read your content through the rendered HTML. Baan’s rendering pipeline produces clean, semantic markup:

  • Headings maintain proper hierarchy (h1h2h3)
  • Code blocks are tagged with language (<code class="language-python">)
  • Images include alt text from Markdown syntax
  • Lists, blockquotes, and tables render as standard HTML elements

This clean structure makes it straightforward for AI to parse the logical flow of your argument.


  1. Write a focused article — one main topic per article, with a clear title and introduction
  2. Add a description in frontmatter — this gives AI systems a concise summary after the title
  3. Run Knowledge Graph extraction after publishing — let AI identify entities and attempt Wikidata linking
  4. Review entity assignments — verify isMainSubject: true for your main topic(s)
  5. Configure E-E-A-T signals in Settings → SEO — author name, credentials, and social profiles
  6. Set up llms.txt — especially important if you write in a specific niche

Each entity extracted by the Knowledge Graph gets its own public page at:

https://your-blog.com/[locale]/entity/[type]/[name]

For example: /en/entity/Concept/Python

These pages list all articles that mention the entity, include the Wikidata description and link when available, and contain their own Schema.org markup. They give AI systems and readers a single page on your site that connects your writing on a given topic.