Mirza Irfan Baig · Digital Marketing & SEO

MIRZA IRFAN BAIG · GEO / AEO PRACTICE LOG · AUGUST 2026

Getting small businesses cited inside AI answers

I'm training myself in Generative Engine Optimization by running measured experiments on live brands for an SEO team in Pakistan — tracking whether ChatGPT, Gemini and AI Overviews name a business, then changing the site and the tracked question set until they do. Below is what the numbers did.

4brands tracked in AI answers, weekly
0 → 9 %AI visibility, embroidery brand, in 4 days
4 → 49brand mentions in AI answers, print brand
94AI-readiness score reached, 16 of 17 checks

The method

Classic SEO asks where you rank. GEO asks a harder question: when someone asks an AI assistant for a supplier, does your name come out of the model's mouth — and which sources did it read to decide? This is the loop I run.

1 · Measure what AI actually says

Pull 30-day visibility, mention count, average rank and sentiment per brand through the tracking API, together with the competitor set the models cite instead.

2 · Read the citations, not the score

Scan the answer transcripts for the real brand string and domain. A brand only counts when the model names it — not when a similar word happens to appear.

3 · Stop paying for questions you can't win

National "best supplier in the US" questions are owned by Vistaprint and CustomInk. Those get paused. Local commercial questions are winnable, and they get kept.

4 · Mine Search Console for real demand

Take the 90-day queries a site already earns impressions for, and rewrite them as the natural-language questions people actually put to an assistant.

5 · Make the site readable by machines

Schema, a markdown version of each page served by content negotiation, agent and MCP discovery files, clean crawl signals — so an AI agent can parse the business instead of guessing it.

6 · Publish one strong page per cluster

Comparison guides and local service pages built to be quotable — never thin mass posts, which the models ignore.

Three cases

All figures come from the tracking platform's own API snapshots, taken before and after the work, on a 30-day rolling window. Brands are anonymised by sector and region here; the named version with the full monthly reports is available on request.

2 – 6 Aug 2026

Custom embroidery & workwear · Orange County, California

0 % → ≈ 9 %AI visibility, 30 d
0 → ≈ 49brand mentions
≈ 3.9average rank in answers
≈ 77sentiment score

The brand started completely invisible: zero mentions across every tracked question. The tracked set was the problem — it was full of national "best custom embroidery in the US" questions that CustomInk and 4imprint own outright.

  • Read the answer transcripts and found the brand citations did exist — but only on Laguna Hills and Orange County questions.
  • Paused 24 national and zero-yield questions, kept the 7 local ones where the brand was already being named.
  • Added 12 new questions built from Search Console — embroidery Irvine, same-day embroidery, hat embroidery, Mission Viejo, Aliso Viejo, Costa Mesa — the exact local terms the site already earned impressions for.
  • Set a rule I now follow everywhere: pause, never delete, because re-adding a question costs answer-run credits.
1 – 6 Aug 2026

Commercial print shop · Irvine / Orange County, California

1 % → ≈ 3 %AI visibility, 30 d
4 → ≈ 49brand mentions
6.3 → ≈ 4.0average rank in answers
94AI-readiness score · 16 of 17

The hardest case. At the start the shop appeared in 1 % of answers with four mentions, while Vistaprint held 19 % and Staples 13 %. You do not beat Vistaprint on "business cards" — so the strategy moved entirely to local commercial intent, and the site itself was rebuilt to be machine-readable.

  • HowTo schema in JSON-LD on the home, same-day and file-upload pages — the one failing readiness check, fixed.
  • A markdown version of each page, served by content negotiation, so an agent requesting text/markdown gets clean text instead of parsing layout.
  • Agent discovery files — /.well-known/agent.json, an MCP server card and Link headers — plus a WebMCP script exposing business info, services and how-to-order.
  • Content-Signal directives in robots.txt, and layout-shift fixes on the product cards.
  • Question set rebuilt the same way: 23 local active, 34 national paused, twelve of the new ones taken straight from Search Console.
Aug 2026 baseline

Two benchmark brands · print, California & salon/spa, Ontario

25 %visibility · print brand
92mentions · 4th of 51 entities
9 %visibility · salon brand
3.8average rank · salon brand

Not every project is a rescue. These two were measured to establish what "good" looks like in a local market. The print brand sits fourth out of 51 cited entities in its region — behind a national franchise on 44 %, ahead of every independent rival — and the salon holds 9 % in a market where the strongest local spa has 18 %.

  • Mapped, per brand, which competitors the models cite and at what share — including the third-party directories and comparison articles the answers are actually built from.
  • Turned that into a content brief: the page types the models quote — comparison guides, local service pages with real photos and reviews — versus the ones they never touch.
  • Confirmed a pattern worth more than any single ranking: the models lean heavily on directory profiles and educational comparison articles, so those get maintained deliberately rather than left to chance.

What these numbers do and don't prove

The honest reading

Part of each jump comes from changing which questions are measured — dropping national ones a small business can never win, and tracking local ones instead. That is a deliberate strategy decision, not a trick, but it does mean the percentage is not a pure like-for-like comparison.

The clean number is mentions: 0 → 49 and 4 → 49 are real citations of a real brand name inside real AI answers, and they did not exist before.

Why I say it out loud

GEO is a young field, full of vanity metrics. Knowing which of your own numbers is soft — and saying so before anyone asks — is the difference between a report a business can make decisions from and a report that merely looks good.

Every figure here traces back to a dated API snapshot stored with the project.

How the work is run

Monthly performance reports per brand, and a status file per project recording what changed, when and why — so whoever picks it up next isn't guessing.

PracticeWhat it looks like
Monthly performance reportPer brand — visibility, mentions, rank, sentiment, calls and website clicks, with the month's changes explained in plain language
Question inventoryEvery tracked question listed with its ID and state — active, paused, deleted — and the reason it moved
Dated API snapshotsRaw JSON kept per pull date, so any number in any report can be checked afterwards
Written rules per projectWhat must not be broken: forms, schema types, and which questions never get mass-deleted
Search Console as the sourceNew tracked questions come from real 90-day query data, never from guesswork

Tools and skills

GEO / AEOAI visibility tracking APIGoogle Search Console Technical SEO auditsSchema / JSON-LDHowTo & LocalBusiness markup WebMCPagent.json / MCP server cardsContent negotiation robots & Content-SignalCore Web VitalsLocal SEO Google Business ProfileSemantic SEOContent strategy WordPressPython automationAI-assisted development

A second, longer case study

Alongside the GEO work above, I run a website of my own as a live experiment: fourteen months, 28 pages, 761,000 impressions, and 107,000 impressions from AI answers in three months — with every content decision driven by Search Console data rather than by guesswork.

Get in touch

15+ years in SEO, nine of them running my own agency with clients in the USA, UK, Canada and Germany. Based in Germany, working in English, available immediately — remote, or on site in the Rhineland-Palatinate region.