About 1 result (0.09 seconds)
2026-07-08 · 8 min readI have been in digital marketing for over twenty years. I used to write HTML, CSS, and PHP by hand. Then, for a decade, I moved into strategy and stopped shipping code. If you asked me two years ago whether I could build a working diagnostic tool — server-side URL fetching, HTML parsing, a three-pillar scoring engine, a real UI, JSON-LD, sitemap wiring, all deployed to a production Next.js site — in one working session, I would have said no. I would have said the right move was to spec it, hand it to a freelancer or a small shop, and pay $5,000 for a two-week turnaround.
Last week I built exactly that tool. In one session. With AI as co-pilot. It is live at /products/seo-geo-aeo-checker, and you can use it right now.
This post is the receipt. What got built, how long it actually took, what it would have cost through a dev shop in 2026, and — importantly — where AI-assisted builds still fall short. If you are a marketing professional wondering whether the tools have caught up to the point where you can ship real product, this is a data point.
The checker takes a URL, fetches the page server-side (so it works regardless of CORS), parses the HTML with a set of regex extractors, evaluates around 30 signals across three scoring pillars, and returns a scored diagnosis in about ten seconds.
The three pillars are SEO (classic Google-rank signals), GEO (what large language models look for when picking sources to cite), and AEO (what wins the featured-snippet or answer-box position). Each pillar returns an independent 0–100 score, a letter grade, a list of what is working, a list of what to fix, and supporting notes.
It is not a mock. It is a real diagnostic — the same one I run manually during search audits, coded up so anyone can hit it for free without an email gate.
I shipped four core files plus a handful of wiring edits. Every file is diffable against origin/main in the production repo — nothing here is speculative, and none of it is a demo.
app/api/seo-check/route.ts — a Next.js server route. Accepts a POST with a URL, normalizes it, fetches the target page with a 12-second timeout and a custom user agent, gracefully handles 401/403 responses, then runs the HTML through six or seven small parser functions and three scoring engines. About 380 lines. Returns a strongly-typed JSON response.
app/(site)/products/seo-geo-aeo-checker/page.tsx — the server component. Sets metadata, ships two blocks of JSON-LD (FAQPage schema plus SoftwareApplication schema, both live from day one), lays out the hero, embeds the interactive form via a client child, includes an explainer of what each pillar means, and closes with a FAQ accordion and cross-links to the companion article. About 140 lines.
app/(site)/products/seo-geo-aeo-checker/CheckerClient.tsx — the client component. Form state, submission, error handling, GA event tracking, and the score-card UI including one shared PillarCard component that renders each of the three pillars. About 290 lines.
content/articles/seo-geo-aeo-trifecta.mdx — the companion long-form post explaining what the three acronyms are, how they overlap, and how to fix a low-scoring page. Cross-linked from the tool. Cross-links to it in the CTA section. About 220 lines of prose.
Plus wiring: sitemap entry, addition to the products index, updates to the internal page inventory in AGENTS.md, an entry in the sponsored-suggestions rotation, and a couple of FAQ updates. Two clean conventional commits. Pushed. Deployed. Live.
Roughly four and a half hours of focused time, front to back. My hands were on the keyboard for maybe half of that. The rest was reading the AI's output, evaluating it, correcting course, and testing. "A weekend" is a headline word that inflates the story — this was one working session, and I want to be precise about that.
The honest time breakdown by phase:
AGENTS.md.pnpm build, testing against three live URLs, fixing two things that broke (a 403 error handler, a localhost canonical URL fallback for testing against the production domain from a dev server), commits.Total: around four and a half hours. Half of that was writing prose, not code.
Around $6,000 and three to six weeks of calendar time. That is the honest range for a small US or Canadian shop at 2026 blended rates. Offshore is cheaper on paper but coordination overhead usually eats the savings. Here is the side-by-side against what I actually spent, on the same deliverable.
| Line item | Small dev shop | This build (AI-assisted) |
|---|---|---|
| Discovery + spec + kickoff | 4–8 hours | 30 minutes (my head, sketching pad) |
| Design mockups | 4–8 hours | 0 hours (skipped — utility tool) |
| Frontend build | 10–14 hours | 45 minutes (client + server page) |
| Backend build | 12–16 hours | 45 minutes (API route) |
| QA + deploy | 4–6 hours | 30 minutes |
| Copywriting (article) | Extra scope | 90 minutes |
| Total hours | 34–52 hours | ~4.5 hours |
| Blended rate | $125–$175/hr | ~$4/hr in AI tokens + my time |
| Cash cost | $5,100–$7,800 | ~$20 in tokens |
| Calendar time | 3–6 weeks | 1 working session |
That is roughly a 4x cash cost delta and a 100x calendar-time delta on a real deliverable. Not a prototype. Not a demo. A production tool live under my brand, with structured data, a companion article, an internal-linking strategy, and a lead-capture CTA. What used to be a six-week agency project got done between coffee and lunch.
Judgment. The AI writes clean code and moves fast, but it does not know what your business needs, cannot spot the wrong architectural choice inside a familiar-looking pattern, and cannot infer the conventions of your specific codebase. Every one of those gaps is still on the human. The "ship an app in a weekend" narrative gets over-sold constantly, and it is worth being specific about the failure modes.
Judgment does not come from the AI. I still had to know that CORS would kill a client-side fetch, that FAQPage schema is the highest-leverage AEO signal, that a AbortSignal.timeout(12_000) is the right shape for a public tool, that JSON-LD should be split into two separate <script> blocks for schema clarity, that the article needed a specific frontmatter format to route through the existing MDX pipeline. The AI wrote the code cleanly. It could not have made the design decisions that made the code correct.
The AI ships confident wrong answers. In this build, it initially suggested using the cheerio HTML parser — which is not installed in the repo, and would have added an unnecessary dependency for what a set of small regex extractors handles fine. It also proposed a schema block that would have failed validation. I caught both because I know what to look for. A non-technical marketer running the same session would have shipped both problems into production.
Repo conventions are invisible to the AI unless you feed them. The repo has a specific AGENTS.md, specific conventions about canonical domain, specific sitemap patterns, specific product-page layout patterns. Every one of those had to be surfaced by me. The AI followed conventions once shown, but never inferred them.
The last mile is still work. Local testing against three URLs. Handling 401/403 gracefully. A localhost-only canonical fallback so I could test against www.corristonconsulting.com from a dev server. Adding GA tracking. Writing the article. Wiring sponsored suggestions. Every one of those was a small, specific decision that added up to a real hour of my time.
The story is not "AI builds apps for you." The story is "AI collapses the cost of the parts you already know how to specify, so a competent generalist can now ship what used to require a team."
If you are a marketing professional with a strong opinion on what a useful tool would look like — specific and opinionated, not vague — you can now ship it yourself in an afternoon. Three preconditions matter more than the AI does, and if you have all three, you have a real speed and cost advantage over competitors who still think this kind of work requires a six-week project.
The three preconditions:
If all three are true, you can ship real lead-magnet tools, real diagnostic utilities, real interactive content — the stuff that used to be a six-week agency project — as fast as you can specify them.
The one I built in this case study is live and free at /products/seo-geo-aeo-checker. Paste any URL and it will run the diagnostic. If you want the story behind why the three pillars exist — SEO for Google, GEO for AI citation, AEO for the answer snippet — that is in the companion article.
If you have a tool in your head that you have been meaning to ship but keep putting off because it would cost too much or take too long, I would love to talk. That gap has closed. Book a consult and we will scope what it looks like to ship yours next.
Gary Corriston runs Corriston Consulting, working with agencies and in-house marketing teams on paid media, SEO, marketing operations, and demand gen infrastructure. He's also building Campaign Budget Optimizer, an AI-native cross-platform budget allocation tool launching May 2026.
Book an intro call →
You need to be able to read code and catch mistakes, not necessarily write it from scratch. The AI will generate working code fast, but it will also confidently suggest the wrong dependency, the wrong architectural pattern, or a schema block that fails validation. If you cannot spot those mistakes, they ship into production. Old-school engineering literacy — the kind marketing professionals who used to write HTML, CSS, or PHP already have — is what makes AI-assisted builds actually work. Full ground-up coding skills are optional. Code literacy is not.
Claude as the primary coding assistant, running against the production repo with full file access. That was the whole stack for code generation. Total token cost across the session came to roughly $20. No specialized coding IDE, no separate agent framework, no vector database, no proprietary marketing-AI SaaS product. If you have a Claude subscription and a codebase you already deploy from, you have the tools that shipped this tool. The stack is not the moat — the specification and the judgment are the moat.
Realistic for a build of this scope. The whole session was maybe 30–50 back-and-forth exchanges across code generation, review, and iteration. Larger builds — a full custom SaaS product, a multi-page interactive tool, a real backend with database migrations — will cost more, and I would expect $100–$300 in tokens for something at the six-week-agency-project scale. For a single utility tool that fits inside an existing Next.js repo, $20 is normal. The AI is cheap. The bottleneck is your ability to specify the right thing.
Something that lives inside a workflow you already run manually. Diagnostic tools, calculators, checklists that score against a rubric, and simple content-repurposers all work well. The pattern is: a repetitive analysis you already do in your head, coded up so a prospect can hit it themselves for free. That gives you a lead magnet, a talking point, and a piece of interactive content that AI search engines can cite. Avoid greenfield SaaS as a first project — the deployment and account infrastructure will eat more time than the tool itself.
When the project involves a real backend with user accounts, payment processing, sensitive data, multi-tenant infrastructure, or SOC 2 obligations. Also when you have zero code literacy and cannot review what the AI writes. And when the project is deep in a technical domain you have no operator experience in — an AI-assisted build is only faster than a shop if you can specify the design correctly, and if you cannot, a shop's discovery process will produce a better result. For a scoped utility tool, marketing dashboard, or interactive lead magnet, ship it yourself. For a real product with security surface and enterprise buyers, hire the shop.