With AI, it is now possible to go from an idea to a working digital product incredibly quickly. But getting a website to work is only the beginning.
The more interesting question is:
Can people find it, can machines understand it, and can AI actually use it?
That is the part I focus on.
I use AI and vibe coding as development tools, but I also look at what happens after the code works: technical SEO, structured data, performance, accessibility, AI discoverability and, increasingly, how websites can be understood and navigated by AI agents.
A good example is one of my own projects: "KodeKid" (https://www.kodekid.app/).
*KodeKid: A Website Built to Be Understood
KodeKid started as a practical web project, but I also used it as a testing ground for a broader question:
What happens when you treat a modern website as something that needs to communicate with both humans and machines?
I documented the technical approach here:
"Behind the Scenes: How KodeKid Is Built" (https://www.kodekid.app/behind-the-scenes)
The site combines a number of techniques that are often treated as separate disciplines:
- Technical SEO
- Structured data
- JSON-LD
- Semantic HTML
- Canonical URLs
- XML sitemap
- Metadata
- FAQ markup
- Accessibility
- Core Web Vitals
- AI crawler access
- "llms.txt"
- Modern frontend development
The point isn't that every website needs exactly the same technology stack.
The point is that these different layers need to work together.
A website can look excellent and still be difficult for search engines to understand.
It can have perfectly valid code and still provide poor answers to users.
It can rank well in traditional search and still provide very little useful context to an AI system.
That is where the distinction between simply building a website and optimizing a website becomes important.
SEO Is Still the Foundation
There is a lot of discussion around GEO, AEO and AI search, but the fundamentals have not disappeared.
Google's own documentation makes this fairly clear.
"Google: AI features and your website" (https://developers.google.com/search/docs/appearance/ai-features)
Google's AI search experiences build on many of the same systems and principles used by traditional Search.
That means the basics still matter:
- Can the site be crawled?
- Can pages be indexed?
- Is the content understandable?
- Is the site technically sound?
- Are important pages discoverable?
- Is the content useful and relevant?
- Is structured data implemented correctly?
"Google's SEO Starter Guide" (https://developers.google.com/search/docs/fundamentals/seo-starter-guide) is still a useful reference for these fundamentals.
For me, this is where vibe coding needs another layer of thinking.
AI can generate the code. Someone still needs to understand what the code should achieve.
GEO and AEO: The Next Layer
Generative Engine Optimization, or GEO, is about making content useful and understandable in generative search experiences.
Answer Engine Optimization, or AEO, focuses more specifically on providing information in a structure that makes it easier to identify and answer specific questions.
These terms are increasingly used in the industry, but I don't see them as replacements for SEO.
I see them as additional ways of thinking about the same fundamental problem:
«How does a machine understand what this website is about?»
Google's own documentation discusses optimization for generative AI features here:
"Google: Optimizing your website for generative AI features" (https://developers.google.com/search/docs/fundamentals/ai-optimization-guide)
This changes how I think about website content.
Instead of only asking:
"What keyword should this page rank for?"
I also ask:
- What question does this page answer?
- What facts should an AI be able to extract?
- Are those facts clearly structured?
- Can the relationship between the company, people, products and services be understood?
That is a much more interesting design problem.
Structured Data Is Part of the Conversation
One of the things I pay attention to is structured data.
Machines don't experience a website in quite the same way humans do.
A person can look at a page and immediately understand that a logo represents a company, that a particular person is the founder, or that a section contains frequently asked questions.
Structured data can make some of those relationships explicit.
"Google: Introduction to Structured Data" (https://developers.google.com/search/docs/appearance/structured-data/intro-structured-data)
On KodeKid, I use JSON-LD and structured information to provide additional context about the content and entities represented on the site.
Again, this isn't a magic ranking button.
It is about reducing ambiguity.
Performance Is Not Just a Lighthouse Score
Performance is another area where AI-built websites can benefit from human attention.
Modern frameworks make it easy to create impressive interfaces. But impressive interfaces can also become heavy interfaces.
Google's current Core Web Vitals focus on:
- LCP for loading performance
- INP for responsiveness
- CLS for visual stability
"Web.dev: Core Web Vitals" (https://web.dev/articles/vitals)
I measure these rather than assuming that a website is fast because it feels fast on my own machine.
And I don't think a performance report should be treated as a certificate saying "job done."
A real website has compromises.
A visual effect may be worth the additional loading cost.
A complex application may have different performance requirements from a simple marketing page.
The important thing is knowing where the compromises are.
That's also why I document both the strengths and weaknesses of KodeKid.
If something can be improved, I'd rather show it than pretend the number is perfect.
From Search Engines to AI Agents
This is where the subject gets particularly interesting.
The next step isn't only about AI understanding a website.
It is about AI using it.
Chrome is already experimenting with Agentic Browsing in Lighthouse:
"Chrome: Agentic Browsing" (https://developer.chrome.com/docs/lighthouse/agentic-browsing/)
The idea is to consider whether websites are understandable and usable by AI agents.
This puts accessibility and semantic structure into a new context.
A human can often work out what a button does from its visual appearance.
An AI agent needs meaningful information about that button.
It needs to know what is interactive.
It needs to understand links, forms, labels and navigation.
It needs to know what action is possible and what happens next.
That leads to an interesting progression:
SEO: Can a search engine find and index the page?
GEO: Can an AI system understand and use the content?
AEO: Can the system identify a useful answer?
Agent-ready: Can an AI agent actually navigate and interact with the website?
These are different problems, but they increasingly overlap.
And What About "llms.txt"?
"llms.txt" is another example of where the discussion around AI and websites is moving quickly.
The idea is to provide LLM systems with a structured entry point to important information about a website.
I use it on KodeKid:
"https://www.kodekid.app/llms.txt" (https://www.kodekid.app/llms.txt)
But I don't consider it a magic solution.
Chrome describes "llms.txt" as an emerging convention:
"Chrome: llms.txt" (https://developer.chrome.com/docs/lighthouse/agentic-browsing/llms-txt)
It is important to distinguish emerging practices from established search requirements.
The bigger principle is more useful:
«Make the important information on your website easy for machines to discover and understand.»
"llms.txt" can be one part of that strategy.
It isn't the strategy itself.
What I Actually Mean by "Vibe Coding"
For me, vibe coding isn't the end product.
It is a development method.
AI allows me to prototype faster, test ideas quickly and build websites and applications that would previously have required considerably more development time.
But speed introduces a new problem.
When almost anyone can generate a working website, the quality of what happens after generation becomes more important.
Can the architecture be maintained?
Is the HTML meaningful?
Is the content structured?
Can Google understand the site?
Can AI systems extract the important information?
Does the application work for people using assistive technology?
Can an AI agent understand the interface?
Is the site fast enough?
These are not questions that disappear because AI wrote the code.
They become more important.
The Website After "It Works"
That's ultimately what I am interested in.
I build websites and web apps using AI as part of the toolbox, but I don't stop when the application works.
I look at what happens next.
Can it be found?
Can it be understood?
Can it answer questions?
Can it be used?
Can it communicate clearly with both humans and machines?
"KodeKid" (https://www.kodekid.app/) is one example of how I approach that problem.
"Behind the Scenes: How KodeKid Is Built" (https://www.kodekid.app/behind-the-scenes)
Vibe coding makes it possible to build faster.
The next challenge is making those websites searchable, understandable and ready for the increasingly machine-driven web.
Author Lars Sohl HTTPS://www.larssohl.dk and HTTPS://www.kodekid.app
