Case Study · SEO + AEO

How a Cape Town Software Developer Page Reached the First Page of Google Without Ads, Agencies, or Generic AI Content

Engineering case study on /software-developer-cape-town reaching the first page of Google for a competitive Cape Town service query. Covers the recipe, the four AI pipelines, the schema, the internal link plan, and what it means for LLM answer ranking.

Published
Author
A de Villiers
Read
approximately 7 min
Contents
  1. Why this matters to anyone except me
  2. The recipe, in concrete terms
  3. The toolbox behind the recipe
  4. What this means for LLM answer ranking
  5. Why this was buildable in the first place
  6. The honest disclaimers
  7. If you want this applied to your business

On 2026-04-12, the page at antondevilliers.com/software-developer-cape-town was confirmed indexed on the first page of Google for the query custom software developer Cape Town. The competing results were recruiters, large agencies, job boards, and generic profile pages. The page was built by one person, in one repo, using one toolbox.

Google SERP for the query "software developer cape town" showing antondevilliers.com/software-developer-cape-town ranked on the first page, dated.

Why this matters to anyone except me

Most "AI SEO" output does not rank because it is not engineered. It is generated. Generic prompts, generic articles, generic publish-and-pray. Google does not reward generic. Neither do the LLM answer engines that increasingly intercept buyer intent before Google does.

The recipe behind this ranking transfers. The rest of this post is the recipe.

The recipe, in concrete terms

The exact recipe used to build this page is recorded as a reusable formula:

exact local intent
+ real local entity proof
+ specific project proof
+ FAQ/schema
+ internal topical links
+ broader blog/project/review authority
+ clean sitemap/canonical/metadata
+ human, senior, direct positioning
= a page that can outrank generic recruiter/agency/job-board results

What follows is each ingredient, with what it actually looked like in production.

Exact local intent match

The page aligns the target query across URL, title, H1, description, keywords, and body language:

  • URL: /software-developer-cape-town
  • Title: Software Developer Cape Town
  • Canonical: /software-developer-cape-town
  • H1: "A software developer in Cape Town who builds what your business actually needs."
  • Description: "Cape Town-based software developer with 15+ years experience..."

Keyword placement is direct, but the body reads as a service page, not as keyword stuffing. That distinction is a writing problem, not an SEO problem.

Local entity and business signals

The page injects four schema types: ProfessionalService, LocalBusiness, FAQPage, BreadcrumbList. The LocalBusiness block names a real registered company (Villiers Vision Works (Pty) Ltd), a real Cape Town address, geo coordinates, opening hours, phone, email, and price range. The ProfessionalService names a real provider (Anton de Villiers, with jobTitle and url).

This is the part most "AI SEO" output skips. You cannot fake a registered company, a phone number, and opening hours. The schema is one of the strongest entity signals available to a local service page.

Strong local proof

The page repeats real Cape Town and South African context: SA-registered company, business hours, Afrikaans/English, in-person availability, PayFast/Peach/Ozow integration, POPIA-aware data handling, load shedding resilience, fibre + LTE backup. Not generic "we serve Cape Town" copy. The kind of operational detail a real local operator writes.

Proof before claims

The page lists concrete project evidence with real platforms and real scale: e-commerce work on WooCommerce and Shopify for shops in the US, UK, Europe, Australia, and South Africa; a POPIA-compliant medical and dental practice platform with patient records, clinical notes, and medical aid claims; BX1X as a 37+ module SaaS business operations platform; and platform-scale work for South African enterprises. Numbers, industries, and named platforms beat "we build custom software" every time.

Differentiation against agencies and recruiters

The page positions around senior-direct access, no account managers, no handoffs, honest fit assessment, registered company accountability. This is what makes it competitive against recruiter pages and large agency pages. It answers a different but adjacent intent ("I need a software developer in Cape Town") rather than the recruiter intent ("I need a job listing").

Internal linking cluster

The page links to /contact, /projects, four service pages (/services/wordpress-woocommerce, /services/cloud-applications, /services/api-servers-microservices, /services/mobile-app-development), /reviews/client-reviews, /blog, /about, and /faq. The homepage's BentoServices "Popular entry pages" links back. This page is not orphaned. It sits inside an authority graph.

Shared landing-page system

The page renders through components/LandingPageLayout.js. The layout handles meta, schema injection, hero, trust strip, fit/local relevance section, services, projects, testimonials, process, typical engagements, FAQ, and CTA. Every new landing page on the site uses the same layout. The schema and structure are consistent across pages. That consistency is a signal LLMs reward as much as Google does.

Sitemap priority and crawlability

next-sitemap.config.js lists this URL under the landingPages group at priority 0.85, monthly changefreq, automatic lastmod. The sitemap was confirmed clean in Search Console. Pages without sitemap discipline take weeks to index. This page indexed quickly because the discipline was in place before publish.

Supporting topical authority

The site contains 35 blog posts, 43 project case studies, and 101 review files. Multiple adjacent landing pages: /web-developer-south-africa, /hire-developer-from-south-africa, /senior-software-engineer-cape-town, /wordpress-developer-cape-town, /wordpress-developer-south-africa, /shopify-developer-cape-town, /shopify-developer-south-africa, /nodejs-api-developer-south-africa, /react-nextjs-developer-south-africa, /ecommerce-development, /medical-practice-software, /pos-system-development, /booking-system-development. The Cape Town page sits inside a topical graph. It is not a one-off keyword page.

The 22-article governed content run

A separate run produced 22 supporting articles. Recorded log: 22 drafts, ~45,000 words, every article passed governance checks, every article links to a service page and a project case study, no AI-tell phrasing, no invented facts.

The articles support the topical cluster. The cluster supports the landing page. The landing page outranks the agencies.

The toolbox behind the recipe

Four AI pipelines, combined into the SEO AI Toolbox:

  1. Site Intelligence: captured the current state of the site as the source of truth. Full HTML, screenshots, headings, links, sitemap, technical observations.
  2. Search Project: mapped the search opportunity, classified intent, and identified where this page could compete.
  3. Content Marketer: produced the supporting articles under governance gates. No invented facts, no AI-tell, every piece links a service page and a case study.
  4. Social Publisher: exists for downstream amplification. Was not used for this page.

SEO AI Toolbox pipeline: Site Intelligence → Search Project → Content Marketer → Social Publisher, with one-line outputs per stage. Social Publisher faded because it was not used for this page.

The toolbox is not for sale. The system is operated by one person and applied to your business pages through an AI App Development engagement, not licensed to anyone.

What this means for LLM answer ranking

The same engineering that ranks pages in Google also makes them citable in ChatGPT, Claude, Perplexity, and Gemini answers. LLM answer engines reward the same structures: strong entity definitions, paragraph-level facts, FAQ schema, citable URLs, consistent identity across pages.

The Cape Town page passes all of those checks. Citation tracking on this site began with this article. Observed citations will be logged over the coming months. Most "AI SEO" providers cannot speak to LLM ranking yet. The toolbox treats both surfaces as one engineering problem.

Schema validator output for /software-developer-cape-town showing JSON-LD parsing cleanly with ProfessionalService, LocalBusiness, FAQPage and BreadcrumbList detected.

Why this was buildable in the first place

Twenty-five years in technology. Fifteen building production software for clients in the US, UK, Europe, Australia, and South Africa. E-commerce work on WooCommerce and Shopify, a POPIA-compliant medical and dental practice platform, and BX1X as my own SaaS business operations platform with 37+ modules. The kind of work that ships, runs under load, and survives audits.

Running my own SA-registered company since 2001 means I also see software from the business-owner side. Scopes, quotes, deadlines, support tickets, cash flow, and content that has to actually drive enquiries rather than just sound clever. That is the side of the work off-the-shelf AI tools cannot help with, because they were not designed against it.

Three years of building with AI systems day-to-day, watching them produce confident output that turns out to be wrong. The strengths and failure modes of large language models are concrete to me, not theoretical. That is why these pipelines have eval gates, source-of-truth handling, and governance rules. The apps were built for my own business first. They produced the result documented above. Applying the same systems for clients was the obvious next step.

This page exists because of that progression. Not as a productisation play, but as the natural extension of work that already produced a real result.

The honest disclaimers

I ranked my own page. I have not yet ranked a client at the same recipe density. That work is in progress. The Cape Town story is "I ate my own cooking", not "I ranked a stranger". For the consultative buyer who values operators over agencies, eating your own cooking is the more useful proof. Templates do not produce this.

There is also no guaranteed-ranking promise. Nobody can responsibly make one. The defensible claim is that a recipe that already produced a first-page Cape Town result, applied with judgement, is more likely to produce a result than generic AI content that has never ranked anything.

If you want this applied to your business

The toolbox is private. Engagements are scoped one ranking goal at a time. Fit is decided in a consultation. If you want to talk through what your page should be ranking for (in Google or in LLM answers), book the consultation.

I review every enquiry personally. I do not take every project. I will tell you on the call if it is not a fit.

Frequently asked questions

Is the SEO AI Toolbox for sale?

No. The toolbox is private. It is operated by one person and applied to your business pages through an AI App Development engagement, not licensed.

Can you guarantee a first-page Google ranking?

No. Nobody can responsibly guarantee a ranking. The defensible claim is that a recipe that already produced a first-page Cape Town result, applied with judgement, is more likely to produce a result than generic AI content that has never ranked anything.

Does the same approach work for LLM answer engines like ChatGPT, Claude, Perplexity, and Gemini?

Yes. The same engineering that ranks pages in Google also makes them citable in LLM answer engines: strong entity definitions, paragraph-level facts, FAQ schema, citable URLs, and consistent identity across pages.

How is an engagement scoped?

One ranking goal at a time. Fit is decided in a consultation. Every enquiry is reviewed personally — you will be told on the call if it is not a fit.

Have a project in mind?

I review every enquiry personally. Tell me what you want to build and I'll tell you on the call if it's a fit.

Get in touch