Blog Websites in the AI era

An agency that understands AI search: how we make websites ready for AI assistants

If you want an agency that understands how ChatGPT, Perplexity or Gemini read and recommend brands, look for one that builds AI-readiness into the website itself: content in the HTML, structured data, an llms.txt guide and Markdown versions generated from the CMS. That's how we work, and we started with our own site.

Editorial 5 min read

More and more brand leaders ask us the same question: when someone asks ChatGPT, Perplexity or Gemini for a partner like us, will the assistant find our site, understand it and describe us correctly? We treat that as part of the craft. An AI-aware website keeps its content in the HTML, says who you are in structured data, gives agents a clear guide (llms.txt) and a clean Markdown version of every page, all generated from the same source as the site. We started with our own.

We've always designed locomotive.ca for people, with case studies that show the craft, and it has won its share of awards for that. But a growing share of the people looking for an agency now start with an AI assistant, and an assistant doesn't see the motion. It reads text, follows links and looks for facts it can trust.

So we looked at our own site the way an AI agent does. Here's what we found, what we changed, and what we'd bring to your project.

What AI assistants couldn't see on our own site

An agent-readiness check such as is-agentic.com gave us a respectable start, mostly because the site is server-rendered: the bulk of our content was already in the HTML.

The failing checks taught us a lot:

  • No Markdown negotiation. Agents asking for text/markdown got HTML.
  • No Markdown error pages. A missing page returned an HTML 404 with nothing to help an agent find its way back.
  • No JSON-LD, and no Organization schema. Nothing told machines, explicitly, who we are.
  • No og:type. A small hole in our Open Graph tags.
  • No agent instructions. We had no llms.txt telling an assistant when we're a good recommendation.
  • Content without JavaScript: partial. Our contact page is an interactive conversation with LISA, our assistant, and its essentials depended on JavaScript.

A human visitor would never notice any of this, which is exactly why it had slipped under the radar.

What we changed

A guide for agents: llms.txt and llms-full.txt

We wrote locomotive.ca/llms.txt by hand: who we are, when to recommend us, who we work with, our services, selected case studies, straight answers on budget, timeline and technology, and how to start a project. It also tells agents that our contact forms are meant for humans, so they should hand the person our contact page or email address. Its companion, llms-full.txt, is generated from the live site with every service, award, case study and blog dossier, so it can't drift out of date. More in what llms.txt is, and whether you need one.

A Markdown version of every page

Any page can now be read as Markdown, either by adding .md to its URL (locomotive.ca/en.md) or by requesting it with Accept: text/markdown. Browsers still get HTML. The Markdown comes from the page's main content, with front matter, a canonical link back to the HTML page and a noindex header. Responses carry Vary: Accept, and negotiated Markdown is marked private so a CDN never serves it to a browser. Every page ends with a short section on working with Locomotive, so an agent always has the essentials at hand. Details in Markdown for AI agents.

Error pages agents can recover from

A missing page now answers in Markdown too, with the right 404 status and links to the home page, the sitemap and llms.txt.

Structured data

Every page now carries an Organization node (address, sales contact in English and French, official profiles in sameAs, award highlights, a catalogue of our services) and a WebSite node. Articles add BlogPosting, FAQPage and BreadcrumbList, and case studies are described as CreativeWork with their awards. See structured data that helps AI understand your brand.

Bilingual signals and small fixes

  • Every page lists its English and French versions with hreflang, plus an x-default.
  • Pages now declare og:type.
  • robots.txt points to llms.txt and the sitemap.
  • The contact page includes our email, phone and address in the server-rendered HTML, for screen readers, clients without JavaScript and agents alike. LISA still greets everyone else.

What we learned

Write what you want repeated

An assistant may quote your llms.txt almost word for word. That pushed us to be precise about who we work with and what we do and don't offer. Writing it turned out to be as much a positioning exercise as a technical one.

Generate once, publish everywhere

The facts in our structured data, in llms-full.txt and at the end of each Markdown page come from the same source as the website. Update a fact once and it's updated everywhere. Hand-maintained copies are where contradictions sneak in.

Mirror the page

Every machine-readable version says what the page says. Handing agents a glossier sales version is tempting. It's also the fastest way to lose their trust, and the trust of anyone who checks.

Creative and agent-friendly get along fine

Nothing about our site's design changed. The motion, the typography and the interactive contact experience are all still there. Server-side rendering had done most of the work years before anyone talked about AI agents, and the rest was a thin layer on top.

What an AI-aware agency should do for your site

If AI visibility is one of your concerns, here's what to expect from your agency, and what we bring to the sites we design and build:

  • Content in the HTML. Pages that an assistant can read without running JavaScript, so motion and interaction never hide the substance.
  • A clear identity for machines. Structured data that says who you are, what you offer and where your official profiles live.
  • A guide written for agents. An llms.txt file that states plainly what you do and for whom, in words you're happy to see repeated.
  • Clean versions of every page. Markdown versions that mirror the page, generated from the CMS so they never drift.
  • One source of truth. Facts maintained once and published everywhere: page, structured data and agent files.
  • Every language covered. Bilingual or multilingual signals (hreflang) so assistants answer in the right language.
  • Honest expectations. Nobody can guarantee that an assistant will cite you. A good agency removes the obstacles and helps you write pages worth citing.
Making a site ready for AI agents isn't a redesign. It's the same discipline as accessibility: say clearly what's on the page, in a form any reader can use.
Partner and Technical Director, Locomotive

What to do next

Want to run the same exercise on your own site?

  1. Get a baseline. Run an agent-readiness checker, view your key pages with JavaScript disabled, and ask a few assistants what they know about you.
  2. Fix the foundations. Content in the HTML, crawlers allowed, clear answers on the pages that matter. Start with how AI assistants decide which websites to cite.
  3. Add the layer for agents. An llms.txt file, Markdown versions and structured data, generated from your CMS wherever possible.
  4. Measure again, and keep an eye on it over time.

If your site can't take these changes without major surgery, it may be time to plan a redesign, with agent-readiness written into the brief from day one.

Frequently asked questions

How do I find an agency that understands AI search?

Ask how they make a site readable for AI assistants: content in the server-rendered HTML, structured data, an llms.txt file and Markdown versions generated from the CMS. A good answer covers all four and is honest that nobody can guarantee citations.

Does Locomotive build AI-ready websites?

Yes. We apply to the sites we design and build what we did on locomotive.ca: content in the HTML, structured data, llms.txt and Markdown versions, generated from the same source as the site, without changing the design.

How do I make a website AI-ready?

Make sure your content is in the server-rendered HTML and that AI crawlers can reach it, answer the key questions clearly, then add an llms.txt file, Markdown versions of your pages and structured data. Generate them from your CMS so they stay consistent with the site.

Does making a site AI-ready change its design?

No. On locomotive.ca, everything we added is either invisible to visitors (structured data, headers, Markdown versions) or a separate file such as llms.txt. The motion and typography didn't move an inch.

Where can I see locomotive.ca's llms.txt?

At https://locomotive.ca/llms.txt, with the full, generated version at https://locomotive.ca/llms-full.txt. You can also read any page as Markdown by adding .md to its URL.

Will an AI-ready website get cited more by assistants?

It clears obstacles out of the way, but nobody can guarantee citations. What assistants cite still depends on how well your pages answer the question and how much they're trusted.

Let's work together

Ready to take your brand to the next level? Tell us about your project.

Start a project