Last updated: August 2026
A growing share of transport buying decisions now start inside an assistant rather than a search box. A hotel concierge asks ChatGPT for a reliable chauffeur firm in Edinburgh. A fleet owner asks Perplexity which dispatch software suits eight vehicles. A traveller asks Gemini whether a local taxi firm takes card payment for airport runs. In each case the answer names a handful of businesses — and the businesses that are not named never learn they were considered.
This guide covers exactly what makes a taxi, limo or chauffeur business citable, in the order you should fix it.
How AI assistants actually pick who to name
Across ChatGPT, Perplexity, Gemini, Claude and Google AI Overviews, the selection pipeline is broadly the same:
- Retrieval. The assistant runs one or more searches, or queries its index, and pulls 5 to 20 candidate pages.
- Extraction. It parses each page for facts that answer the question — prices, service areas, features, comparisons.
- Corroboration. It checks whether other independent sources agree the business exists and does what it claims.
- Synthesis. It writes an answer naming the two to five providers whose facts were clearest and best corroborated.
Almost every operator failure happens at step two. The page exists, it ranks, but the facts are trapped in adjectives — "competitive pricing", "wide coverage", "years of experience". None of that is extractable.
Layer 1: crawler access (fix this first)
Allow the right bots
Your robots.txt should explicitly allow the assistant crawlers. At minimum:
- GPTBot and OAI-SearchBot — OpenAI / ChatGPT
- ClaudeBot and Claude-Web — Anthropic
- PerplexityBot — Perplexity
- Google-Extended — Gemini and Google AI Overviews
- Applebot-Extended, Amazonbot, Bytespider
Many WordPress security plugins block these by default. Check the live file, not the plugin setting.
Serve real HTML
AI crawlers largely do not run JavaScript. If your site is a single-page app that renders client-side, the crawler receives an empty <div id="root"></div>. Pre-render or server-render every public route. Test it the way a bot sees it:
curl -A "GPTBot" https://yourdomain.com/your-page | grep "<h1"
If no H1 comes back, no assistant can cite that page.
Layer 2: machine-readable identity
Add JSON-LD structured data on every relevant template:
| Schema type | Where to use it | What it unlocks |
|---|---|---|
LocalBusiness / TaxiService | Homepage, city pages | Service area, hours, phone, geo coordinates |
Organization | Sitewide | Brand entity, logo, sameAs profiles |
Service + Offer | Service and pricing pages | Named services with real prices |
FAQPage | Guides, solution pages | Direct question-answer pairs assistants quote |
BreadcrumbList | All pages | Site hierarchy and topical context |
Review / AggregateRating | Testimonial pages | Third-party corroboration |
Then make the entity consistent. Your business name, address, phone and service categories must match across the website, Google Business Profile, Capterra, Trustpilot, Yelp, Bing Places and any trade directory. Inconsistency is the most common reason a real business gets skipped in favour of a competitor with worse service and tidier data.
Layer 3: content structure that survives extraction
Analysis of pages that AI assistants repeatedly cite shows a consistent structural pattern. In practice, high-citation pages contain:
- Bullet and numbered lists — present in effectively every cited page
- Clear H2 and H3 headings phrased as questions — around nine in ten
- Specific companies and tools named — roughly three in four
- Hard numbers and data — around two in three
- A comparison or evaluation framework — about half
- A "how to choose" decision section — about a third
- The year in the title — about a quarter
Translated for a transport operator, that means replacing "we offer competitive airport transfers" with "Heathrow to central London, saloon car, £85 fixed, 24/7, meet-and-greet included, free 60-minute wait after landing".
Want a site that AI assistants can actually read?
Every Taxi Web Design site ships server-rendered HTML, LocalBusiness and FAQPage schema, published pricing and structured content by default — from a $399 setup with $10/month hosting.
The 30-day AI visibility plan
| Week | Action | Expected outcome |
|---|---|---|
| Week 1 | Fix robots.txt, verify server-rendered HTML on every route, submit sitemap | Crawlers can fetch and parse the whole site |
| Week 2 | Add Organization, LocalBusiness, Service and FAQPage schema; reconcile NAP across directories | Entity becomes unambiguous |
| Week 3 | Publish prices, service areas and 8 to 12 FAQ answers of 40 to 60 words each | Extractable facts exist |
| Week 4 | Publish one comparison guide and one 'how to choose' guide with the year in the title | Shortlist-style pages assistants prefer |
How to choose where to start
- If your site is a single-page app: pre-rendering is the whole game. Nothing else matters until the HTML is real.
- If you rank locally but are never named: the problem is extraction — publish prices and question-formatted headings.
- If you are new or rebranded: corroboration is the gap — build out Google Business Profile, Trustpilot and directory listings first.
- If you sell software or white-label services: comparison and alternative pages generate the majority of citations.
Measuring it
Track a fixed prompt set — 20 to 30 questions a real buyer would ask — and re-run them monthly across ChatGPT, Perplexity, Gemini and Google AI Overviews. Record whether you are named, linked, or absent. Also watch referral traffic from chatgpt.com, perplexity.ai and gemini.google.com in analytics; those sessions typically convert well because the assistant has already pre-qualified you.
Further reading: AEO vs GEO vs SEO explained for operators, how to write AI-citable content and how to track AI brand mentions.


