Skip to content

Case studies

Four engagements, and what actually shipped on each

Two clinics in Cameroon, a reinsurance network operating across the continent, and an accounting practice. Every line below is checkable — visit the sites, read the schema, count the pages in the sitemap.

The work

What was built

Itemised from what is live and public. Nothing here is an estimate.

Jackson Eye Clinic

Optometrist-led eye clinic, founded 2020 · Kotto-Bonamoussadi, Douala

Live and open to Google since 8 October 2026

jacksoneyeclinic.com

Scope. Bilingual site build, technical SEO, GEO, and an ongoing blog

  • Bilingual site, French and English, with a separate indexable URL per language
  • 32 URLs in the sitemap, every one returning 200
  • JSON-LD structured data describing the clinic, its hours and its services
  • Service pages for eye examinations, glasses, prices, location and FAQs
  • A patient-facing journal publishing on a running cadence
  • Prices stated on the page — 2,000 FCFA for an eye test — rather than hidden behind a call

Niss Optique Médical

ONOC-licensed optical practice · Mvog-Ada, Yaoundé

Live and open to Google since 13 October 2026

nissoptiquemedical.com

Scope. Bilingual site build, SEO, GEO, and a citation and NAP programme

  • Bilingual site, French and English, 18 URLs in the sitemap
  • JSON-LD structured data, including the practice’s ONOC accreditation
  • A blog answering the questions patients actually ask about price and repairs
  • Citations audited and corrected across twelve directories, including the ONOC register
  • One canonical name, address and phone number enforced across every listing

Tataachi Network

Insurance and reinsurance network across 40+ African markets · Douala, operating continent-wide

Audit delivered; remediation in progress

tataachi.com

Scope. Full scored audit — technical, on-page, off-page, GEO and trust

  • Scored audit across five pillars, benchmarked against real competitors
  • Conflicting addresses and three different phone numbers identified across the site
  • A page titled for one subject while describing another, found and flagged
  • Thirteen broken links found, including an admin URL exposed in the public footer
  • A regulatory wording risk identified in how the business described itself

NJ’s Accounting & Tax Services

Accounting and tax practice · United States

Built from empty repository to live site in a single working day

Scope. Site build, schema, one city page, one researched pillar post

  • Next.js App Router site, seven routes, custom-domain HTTPS
  • Organization, ProfessionalService, Service and FAQPage schema across the site
  • A researched pillar post with BlogPosting, FAQPage and BreadcrumbList markup
  • One city landing page with genuinely local content, not a find-and-replace
  • Dynamic sitemap, robots.txt pointing at it, Search Console verified

Judgement calls

The decisions that shaped these builds

These are the choices that separate a site that ranks from a site that merely exists. Each one cost something to make.

Roughly three in four keyword rows were thrown out

The raw export was full of career searches, software login queries, and government lookups that Google answers with a .gov result. Targeting those would have produced pages that rank for nothing anybody would buy.

City pages get new components, not a find-and-replace

Named neighbourhoods, local framing, and real regulatory notes. Thin location pages are detectable and they drag the rest of the site down with them.

Prices go on the page

Both clinics publish what an eye test costs. It loses the occasional lead who was only ever price-checking, and it wins the ones who were deciding between you and silence.

No invented people, ever

Where a blog post uses a character, it is framed as an illustrative composite and never as a testimonial. Invented client quotes are a reputation risk that pays for itself exactly once.

Why there are no traffic charts here

The results sections are empty, and that is deliberate

A case study with real numbers is worth more than one without. We have not published them for two reasons, and both will still be true next month if we have not fixed them.

First, client performance data belongs to the client. It gets published when they have cleared it for public use, in writing, and not before. Second, a site that launched in October does not yet have a fair sample. Reading three weeks of search data and calling it a result is how agencies end up quoting a spike that was one journalist and a slow news day.

What you can check today is everything above: the sites are live, the pages are indexed, the schema is in the markup, the blogs are publishing. When there is a clean quarter and written approval, the numbers go here — the flat months included.

Get started

Want to see the audit before the pitch?

We will show you what your site currently ranks for and what your three closest competitors hold. You keep the findings either way.