← Back to blog

Making Websites AI-Readable

·2 min read
aiwebseollms

The Premise

Here's a bet I'm making: within a few years, AI models will be a primary way people discover information on the web. Not replacing search engines entirely, but becoming a significant channel.

If that's true, then the websites that are easy for AI models to understand will have an advantage. And most websites today are terrible at this.

What "AI-Readable" Means

It's not just SEO. Search engines parse HTML, follow links, and index keywords. AI models do something different. They try to understand the content structurally.

Here's what I implemented on this site:

llms.txt

A dedicated route at /llms.txt that serves a curated, markdown-formatted map of everything on this site. It's a standard proposed by the community for giving AI models a clean entry point to understand a website.

My llms.txt includes:

  • Who I am and what I do
  • Every project with URLs, descriptions, and languages
  • All pages and their purposes
  • Social links and contact info

Structured Data (JSON-LD)

Every page has application/ld+json schema embedded in the head:

  • Root layout: Person schema with knowsAbout, sameAs, etc.
  • About page: AboutPage schema
  • Blog posts: BlogPosting with author, datePublished, keywords

Semantic HTML

This sounds basic, but most portfolios get it wrong. Proper <article>, <section>, <nav>, <main> elements. Correct heading hierarchy. aria-label attributes. These matter for both accessibility and AI comprehension.

robots.txt

Explicitly allowing AI crawlers: GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot. Most sites block these by default. I want to be findable.

Why This Matters

If you're a developer building a personal site, you're competing for attention in an increasingly AI-mediated world. The developers whose work is easy for models to understand, cite, and reference will get more visibility.

This isn't about gaming anything. It's about being clear, which is exactly what good engineering is about anyway.