Traffic isn't
the problem.
Your landing page
is.
PageAudit runs two independent AI audits — UX conversion and AI citability — and tells you exactly what to change. Built solo in 5 weeks. The conversion expert SMBs couldn't afford, until now.
Generic audits give
generic advice
Store owners don't need a score. They need the element, the fix, and the expected uplift — specific enough to hand to a developer or implement themselves that afternoon. That gap is PageAudit.
A local barber — good reviews, working website, booked solid on Fridays, invisible on Saturdays. No marketing budget. No idea why the shop down the road shows up when someone asks ChatGPT "best barber near me."




{ "name": "2026-ai", "version": "1.0.0", "main": "index.js", "type": "commonjs", "dependencies": { "@anthropic-ai/sdk": "^0.91.1", "cors": "^2.8.6", "dotenv": "^17.4.2", "express": "^5.2.1", "node-fetch": "^3.3.2", "puppeteer": "^24.43.0" }, "scripts": { "dev": "nodemon src/server.js", "start": "node src/server.js" } }








Seven phases,
seven obstacles.
Tap a phase to explore the problem and fix.




{ "name": "2026-ai", "version": "1.0.0", "main": "index.js", "type": "commonjs", "dependencies": { "@anthropic-ai/sdk": "^0.91.1", "cors": "^2.8.6", "dotenv": "^17.4.2", "express": "^5.2.1", "node-fetch": "^3.3.2", "puppeteer": "^24.43.0" }, "scripts": { "dev": "nodemon src/server.js", "start": "node src/server.js" } }








The Generator:
working isn't the same as good
Three engineering problems fixed. The output still isn't ready to ship.
The generator went through three rounds of debugging — truncated HTML, lazy-loaded images, broken CDN URLs — each fix revealing the next problem. That story is in ↑ Build — Phase 05. This section is about what came after the fixes.
The generator works. Pages load, images appear, layout holds. The question is whether the output is good enough to put in front of a client.
greenscents.co.uk — product page with full image gallery
Generated page — main image loads; gallery row missing

Three things
this project settled
On data pipelines, design intent, and when to ship less.
The most meaningful improvement to the audit — more than any prompt change — was adding extractPageFacts(): a Puppeteer step that measures the page directly before Claude analyses anything. CTA position, delivery text, return policy, review count. Ground truth first, inference second.
The result was immediate: a finding that had been marked Critical for months flipped to Good in the first run. Not because the model got smarter — because it stopped having to guess at things that were directly measurable.
This pattern generalises beyond this product. Any AI tool making claims about observable reality needs a verification step before inference. The model is operating on a compressed representation of reality. The verification layer is the difference between an audit and an impression.
The generator's failure isn't a prompting problem. It's a category problem.
A product page's spacing decisions, typographic hierarchy, and visual rhythm were made by a designer for reasons that aren't encoded in the markup. The HTML records what was produced, not why. Asking Claude to improve that page while preserving its design intent is asking it to infer a decision-making process from its output — with no access to the brief, the brand guidelines, or the constraints the original designer worked within.
The generator can reproduce structure. It can't reproduce intent. What it produces is a page that satisfies the same functional requirements with different — usually worse — aesthetic decisions. Professional designers notice this in seconds.
Shipping UX audit + AEO audit without the generator wasn't a compromise. It was a recognition that each part of the product makes a different promise.
The audits promise precision — specific, verifiable findings backed by DOM data. The generator promises transformation: a better version of your page, ready to use. That's a much stronger claim, and the current output doesn't support it. Shipping both together would have meant the generator's failures discrediting the audit's accuracy in the same session.
Product credibility is harder to rebuild than it is to establish. A client who receives a generated page with a redrawn logo and a missing gallery doesn't then trust the Critical findings in the audit above it.
What this project settled: the value a designer adds to an AI product isn't visual — it's architectural. Knowing what to verify before the model sees it, what intent can't be extracted from structure, and when to constrain scope to protect credibility — those are design decisions. The prompts are the easy part.