Skip to content

Why Isn't My Business Showing Up in ChatGPT? A Guide to Visibility in Google and AI Search

Business entities, Google Maps, WordPress versus custom infrastructure, measuring ChatGPT recommendations, technical SEO checks, and the engineering scope of GEO.

· TankDev Engineering

Your business may appear on Google yet be absent when a customer asks ChatGPT for a recommendation. That does not by itself mean your website is poor or missing an “AI setting.” Being discoverable as a page, being cited as evidence, and being recommended as a business are different outcomes.

This guide treats visibility as an engineering problem: how is the business identified, which sources corroborate it, what HTML does a crawler receive, and how is change measured? We follow a hypothetical hotel in Ankara. Example queries reflect real customer needs, not results or success claims for a TankDev client.

Our AI Search Optimization (GEO) service describes the delivery scope. This article explains the data model, infrastructure decisions, and acceptance criteria behind that work.

Start with the entity: how do search systems identify one business?

An entity is a distinct, identifiable thing: a business, branch, person, product, or service. A website is a publishing channel; the entity is the business described there and elsewhere. If two hotels share a name, the name alone is insufficient. Domain, address, telephone, category, branch relationships, and verifiable profiles need to describe the same business.

Entity engineering does not mean inventing a business online or opening hundreds of arbitrary profiles. It means identifying the real business, resolving contradictions, and making relationships explicit. An obsolete directory phone number, conflicting booking-platform location, or different business name on English pages can make identification harder. The engineering goal is a consistent data contract that reduces ambiguity.

A business identity data contract
FieldSource / validation
Name and trading nameReal, verifiable identity rather than keyword-stuffed profile names.
Address / service areaActual location and eligible service area; no fictional branches.
Telephone and domainCurrent contact details, canonical website, and genuinely owned profiles.
Category and servicesAccurate business category backed by specific service pages.
Branch relationshipsDistinct identity for each location, explicitly linked to the parent.
Update ownershipNamed responsibility for updating every affected record when facts change.

NAP means name, address, and phone. Consistency is not merely character-for-character equality: formatting one telephone number differently is unlike publishing two different numbers. Normalize data, then inspect meaningful conflicts. If a hotel’s page, structured data, and profile disagree about parking, the problem is data quality, not the choice of SEO plugin.

Technically, give the organization a stable @id and connect its services and pages to that identity. Turkish and English pages about one company should not invent separate companies. Use sameAs for verifiable profiles representing that same entity, not arbitrary news pages or strong domains. Google’s Organization documentation explains how this data can help disambiguate organizations.

JSON-LD / illustrative organization and service graph
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://example.com/#organization",
      "name": "Example Business",
      "url": "https://example.com/",
      "sameAs": ["https://www.linkedin.com/company/example-business/"]
    },
    {
      "@type": "Service",
      "@id": "https://example.com/services/#service",
      "name": "Example service",
      "provider": {"@id": "https://example.com/#organization"},
      "url": "https://example.com/services/"
    }
  ]
}

This is an illustrative graph, not a live business record. Adapt it to verified facts. A hotel can use the appropriate LocalBusiness subtype such as Hotel, with its actual address and location relationships. Do not invent ratings, prices, awards, reviews, or services. Generate JSON-LD and visible HTML from the same data source so an administrative update changes both representations.

A coherent entity can also matter on Google Maps

Yes: a coherent business identity can support Google Maps visibility by improving consistency between the Business Profile, website, and credible records. That is not an effect attributed to JSON-LD alone. For eligible businesses, work includes verification, accurate category, address/service area, hours, and genuine customer reviews. Google describes local ranking through relevance, distance, and prominence; entity work does not eliminate distance or purchase first place. See Google’s local ranking guidance.

Acceptance should not be “Google knows us now.” It can be: correct telephone numbers across inspected records, one canonical organization identity, verified profile links, and no incorrect branch relationships. Measure Maps performance separately with location and query context preserved. An entity layer is infrastructure under our control, not permission to write into a platform’s internal knowledge graph.

Business facts, consistent website and profile data, search answers, and four distinct measurement layers.

1. Why Do I Appear on Google but Not on ChatGPT?

First unpack “I appear on Google”: for your business name, for “hotel in Ankara,” or only on Maps? Being found by someone who knows your brand differs from being selected for an unbranded need. Likewise, an AI answer mentioning a company, recommending it, and citing its website are separate events.

Different customer questions about the same hotel
Customer questionRequired information / evidence
“What is Hotel X’s phone number?”Brand identity and current contact details.
“Can you recommend a hotel in Ankara?”Location, hotel type, and clarification of preferences.
“A hotel in Çankaya with parking and late check-in?”Explicit parking, check-in policy, and actual location.
“We are travelling with children; somewhere accessible with clear cancellation terms?”Family/room conditions, transport information, and cancellation policy.
“Compare these two hotels for business travel.”Comparable, current, supportable facts.

“Quality service and customer satisfaction” does not establish these facts. Is parking paid? Is late check-in limited? Which transport option is nearby? When was the information updated? Answerable content does not require a thin page for every possible question. Explain real scope, constraints, and conditions on useful pages, linking to detail where necessary.

An AI answer is not a fixed ranking table. Language, location, question detail, conversation context, and whether web search is used can change the result. A response without web search and one grounded in current sources are different tests. Absence from a model’s prior knowledge does not prove today’s site is inaccessible; one appearance does not establish universal recommendation.

Separate crawling permission, discovery, and recommendation

OpenAI distinguishes OAI-SearchBot for search from GPTBot for model training. A site can allow the former while disallowing the latter. ChatGPT-User relates to user-initiated visits. This distinction shows why “we enabled AI bots, so you will be recommended” is incomplete: permission concerns access, not recommendation. See the official OpenAI crawler documentation.

robots.txt / illustrative policy, not a ranking mechanism
User-agent: OAI-SearchBot
Allow: /

User-agent: GPTBot
Disallow: /

User-agent: *
Allow: /

Sitemap: https://example.com/sitemap.xml

This is an illustrative policy, not a default for every business; choose it according to data-use preferences. robots.txt is not authentication. An Allow line cannot overcome a CDN/WAF returning 403, CAPTCHA, or an endless challenge. User-Agent strings are spoofable; use published provider IP information and access logs when verifying genuine crawler traffic.

Google’s AI features retain foundational SEO requirements; they do not require special “GEO schema” or an AI text file. Index eligibility, readable content, and real information still matter. llms.txt may serve as a useful content map; it is not a registration form for Google or ChatGPT. See Google’s AI features guidance and the llms.txt proposal.

2. Is a WordPress Website Enough for AI Search?

Yes. A well-built and maintained WordPress website can support Google and AI search. The CMS name alone is not a visibility criterion. A WordPress installation delivering meaningful HTML, good performance, accurate business data, and accessible pages can succeed. Custom software can still produce empty HTML, duplicate URLs, slow responses, and security failures if designed badly.

Nevertheless, TankDev does not prefer WordPress for this type of project. We select the operating system, server layout, runtime, data model, and administration interface according to requirements and build a custom system. We do not write an operating system from scratch: we deliberately choose its version, update strategy, and service boundaries. Our preference is about control and testability, not an automatic ranking advantage.

Controls we own in a custom system
LayerEngineering decisionBusiness meaning
OS / runtimeSupported versions, patches, service privilegesUpdate and maintenance ownership is explicit.
Server / CDNTLS, caching, WAF, crawler access policyThe correct page reaches people and crawlers.
HTML / routingSSR or static output, status codes, canonical URLsContent delivery and stable addresses are testable.
Business dataSingle source, field validation, stable entity identityContact updates reach every generated representation.
AdministrationRoles, drafts, publishing, change historyThe business can update content safely.
OperationsTests, backups, rollback, measurementThere is an operating and recovery plan after delivery.

For example, an address update changes the contact page and JSON-LD together; URL changes receive planned permanent redirects. Tests verify Turkish/English canonical and hreflang relationships. Rather than discovering whether a plugin update emitted another Organization block, we version schema generation in our own code. WordPress can follow the same discipline; a custom system makes us explicitly responsible for it from the start.

Control carries a cost: maintenance, security, migrations, and backups become our responsibility. A business needing a few static pages should not receive an unnecessarily complex platform just to satisfy a technology preference. Decide whether to improve or migrate an existing WordPress site after inspection, preserving valuable content and URLs. Building custom does not justify discarding existing search equity.

Shell / basic delivery inspection — illustrative URLs
curl -I https://example.com/services/
curl -sS https://example.com/services/ > response.html
curl -sS https://example.com/robots.txt
curl -sS https://example.com/sitemap.xml

# Inspect response.html for actual service text, a single intended canonical,
# language alternates, and structured data matching visible facts.
# Repeat with documented crawler UAs only as a delivery diagnostic.
# A spoofed User-Agent does NOT prove a real crawler visited the page.

Performance also belongs in acceptance criteria. With sufficient real-user data, good mobile p75 Core Web Vitals thresholds are LCP ≤ 2.5 s, INP ≤ 200 ms, and CLS ≤ 0.1. One perfect PageSpeed lab score does not replace those distributions. Report lab and field data with URL and observation date; neither is an AI recommendation rate. See Web Vitals.

3. How Can I Measure Whether ChatGPT Recommends My Business?

A single prompt followed by “we appear / we do not appear” is not a measurement system. Separate four layers: technical accessibility, search/index visibility, answer mentions or citations, and qualified demand reaching the business. PageSpeed Insights, Schema.org Validator, and Search Console on our service page examine the first layers. None independently proves that ChatGPT recommends the business.

Verification links: what does each tool establish?
ToolWhat it measuresLimit
PageSpeed InsightsLab performance and CrUX field data where available.Not proof of AI recommendation or indexing.
Schema.org ValidatorStructured-data vocabulary and syntax.Does not verify facts or Google feature support.
Google Search ConsoleURL inspection, indexing, Google search performance.Not a ChatGPT recommendation report.
Rich Results TestGoogle-supported rich-result markup.Not every schema type is supported; valid Service markup may not appear.
Bing Webmaster ToolsBing crawl/index data and available AI Performance reporting.Not a complete counter for all platforms or answers.
Google AnalyticsSource/medium, landing pages, configured key events.Cannot count unclicked recommendations; referrers may be lost.
Google Business ProfileEligible/verified profiles and available performance metrics.Distinct from website rankings and ChatGPT recommendations.

Google AI-feature traffic is included in Search Console’s Web reporting; we do not label that ChatGPT traffic. Bing AI Performance reports citation activity across supported Copilot/Bing and partner experiences; it does not explain every model’s answer or recommendation rationale. Keep platform reports separate from your own experiments. See Google’s measurement scope and the Bing AI Performance announcement.

Build a repeatable AI query panel

Illustrative protocol: select 20 unbranded and 5 branded questions from customer interviews. Report Turkish and English separately, holding service region and user need constant. Run three independent new sessions per question on two preselected platforms. That produces 25 × 2 × 3 = 150 answers per language. Do not combine the 30 branded answers with the 120 unbranded answers into one success rate.

Potential test surfaces include ChatGPT, Gemini, Claude, Grok, Perplexity, and DeepSeek. This does not imply identical search mechanisms or web access on every account. Record the product, displayed model, account type, search mode, date, and location for every run. Disabled or unavailable web search is a separate test class.

JSON / one observation, not a claimed result
{
  "query_id": "hotel-unbranded-07",
  "language": "tr",
  "region": "Ankara / Cankaya",
  "platform": "selected-product",
  "model_displayed": "record-at-test-time",
  "search_mode": "record-at-test-time",
  "brand_in_prompt": false,
  "run": 1,
  "observed_at": "record-ISO-8601-timestamp",
  "mentioned": false,
  "explicitly_recommended": false,
  "owned_domain_cited": false,
  "facts_verified": false,
  "evidence_file": "answers/query-07-run-1.txt"
}

Define coding rules first: accepted brand aliases, what counts as a recommendation, and how citation domains are checked. A competitor page mentioning your business is not an owned-domain citation. A link to your website need not be a recommendation; it could support a negative comparison. A second reviewer should check sampled answers to reduce classification errors.

Measurement definitions / illustrative panel
mention_rate = answers_with_brand / eligible_answers
recommendation_rate = answers_explicitly_recommending_brand / eligible_answers
owned_citation_rate = answers_citing_owned_domain / eligible_answers
fact_accuracy = verified_factual_claims / checked_factual_claims

# Example only: 24 owned-domain citations among 120 unbranded answers
# => 20% observed citation rate, NOT 20% of all ChatGPT users.
# Three runs of the same prompt are not fully independent market samples.
# Keep branded, unbranded, language and platform breakdowns separate.

Repeat the same panel weekly and log changes. Moving from 8/120 to 24/120 can be an observation without proving causation. Model updates, source changes, and current demand can affect results. A selection of favorable screenshots without answer records and links is not an auditable report. If automating, use permitted tools/APIs and do not present an API experiment as identical to the consumer interface.

For business impact, track session source, landing page, and predefined key events such as quote requests in GA4, then reconcile qualified leads in the CRM. Referrals from chatgpt.com or other assistant domains are useful evidence, but referrers are not always preserved. A bot visit is not a human session. An optional “How did you hear about us?” field adds evidence without turning missing attribution into certainty. See GA4 traffic-source scopes.

4. How Much Does GEO Cost, and What Are You Paying For?

TankDev does not offer one fixed-price package for every business. Cost depends on existing infrastructure, languages and locations, inconsistent data, development needs, integrations, and post-delivery responsibilities. We define the work before pricing an unknown scope. See our GEO service page for scope and quotation.

For a business owner, the purchase means coherent online business information, a website system you own, and independently checkable delivery. In engineering terms, it means a data model, access policies, HTML generation, schema graph, routing, observability, and versioned acceptance tests. “Is our address correct?” becomes a test that every relevant output generates the same verified address.

Purchased work and delivery evidence
Work packageTechnical outputWhat the business can inspect
Discovery and entity inventorySource inventory, identity model, conflict logWhich contact details and profiles need correction?
Custom web infrastructurePages, administration, SSR/static HTML, canonical/hreflangIs it fast and can staff update it?
Technical SEO and dataSitemap, robots policy, coherent JSON-LD, URL migration planAre the actual pages and validation reports delivered?
Profile consistencyVerifiable changes on eligible platformsWhat changed, where, and who owns the account?
Testing and measurementPerformance outputs, query panel, baseline, evidence archiveWhich metric changed, on what sample?
Operations and handoverBackups, monitoring, access handover, maintenance boundariesWho owns it and responds when something fails?

Our core service is not producing blog posts or advertising copy; it is implementing the technical structure for business-provided, verified information. Content creation, translation, photography, or editorial work must be scoped separately where needed. Specify who supplies each input instead of hiding assumptions inside a “GEO package.” Publishing this article does not mean blog writing is included in every client engagement.

Separate one-time implementation from recurring costs. Hosting, domain, third-party tools, maintenance, security updates, and recurring measurement need explicit owners and pricing. A single-location website differs from a multilingual, multi-location system with booking integrations. Assess customer ownership of accounts, code and data handover, restore procedures, and exit costs as well.

Scope model / no vendor price implied
initial_scope = discovery + identity_cleanup + implementation + migration + acceptance
recurring_scope = hosting + maintenance + monitoring + agreed_measurement

# Define units before estimating:
# locations, languages, unique templates, existing URLs, integrations,
# profiles to reconcile, query-panel size, test cadence, retention.

cost_per_qualified_lead = attributable_period_cost / qualified_leads
# If qualified_leads == 0, report zero leads and the actual cost;
# do not manufacture a finite success metric.

Success is not simply the number of files added. Report technical acceptance and market outcomes separately: validated pages and profiles are deliverables, recommendation rate in a defined panel is an observation, and qualified demand is a business outcome. One JSON-LD block cannot reasonably be sold as indexing across every AI system or guaranteed first placement.

Which questions should delivery answer?

  • What is the canonical business identity, verified profile set, and source of truth?
  • Which URLs changed, and were redirects and language relationships preserved?
  • What content and status code does a crawler receive on its initial request?
  • Where are dated performance, schema, and index checks?
  • Did the AI prompt include the brand, and are platform and search mode recorded?
  • Are mentions, recommendations, citations, and qualified demand reported separately?
  • Who owns hosting, maintenance, access, and data handover?
Visibility engineering means presenting the business’s facts consistently, accessibly, and verifiably—and showing what changed through measurable evidence.

For an assessment of your website, profiles, and technical requirements, explore our AI Search Optimization service. For the operating architecture behind a reliable implementation, read From PoC to Production: architecture, reliability, and cost engineering.

Implementation evidence: TankDev SEO and GEO case study. Inspect our own website’s PageSpeed, security report, citation chart, sitemap, and Schema.org screens with the scope and timing of each observation.

For Google access and indexing issues, our Why is my business not on Google? Technical SEO and GEO guide walks through HTTP, robots/noindex, canonical, hreflang, and entity relationships.

Frequently Asked Questions

01Is it possible to appear on Google but not ChatGPT?

Yes. Brand search, organic ranking, citation, and AI recommendation are different outcomes. Question context, sources, and search mode can change the result.

02What does entity engineering mean?

Defining the real business consistently across its website, profiles, and credible sources, with explicit relationships. It is not direct registration in a platform’s internal knowledge graph.

03Can entity work help Google Maps visibility?

Yes. Accurate profiles, categories, contacts, and locations can support local visibility. Distance and prominence also matter; schema alone cannot guarantee a position.

04Can WordPress succeed in AI search?

Yes. Accurate information, accessible HTML, performance, and maintenance matter. TankDev prefers custom infrastructure for control and testability.

05Does choosing the operating system improve AI ranking?

We do not claim a direct effect. It supports patching, security, performance, and operational control; it is not sold as an AI ranking signal.

06Do PageSpeed or Schema Validator measure ChatGPT recommendations?

No. They check technical quality. Measure recommendations and citations through a defined query panel, and resulting traffic and leads through analytics and CRM.

07Will adding llms.txt make my business appear in ChatGPT?

There is no such guarantee. It may provide a content map, but does not replace accessibility, information quality, or source-selection conditions.

08Is there a fixed GEO price?

TankDev does not apply one fixed package to every business. Quotations follow assessment of infrastructure, languages/locations, development, integrations, and maintenance scope.

09Does the service include blog writing?

The core service covers technical infrastructure and correct business-data implementation. Copywriting, translation, and editorial work require separate scope where needed.

10Do you guarantee first place in ChatGPT?

No. We document technical deliverables and test outcomes under our control. We do not guarantee independent platforms’ recommendations, rankings, or a fixed time to visibility.

Related notes

WhatsAppDirect contact