Given OpenAI’s close relationship with Microsoft, many expect that ChatGPT’s retrieval-augmented generation (RAG) process would use Bing.
However, over the past months, some SEOs discovered that ChatGPT may have secretly pivoted to using Google instead.

These were all one-off experiments. So, I wondered if it was possible for us to find out the ‘truth’ using data instead.
Here’s what we found.
- She pulled the actual search queries ChatGPT made (“fan-out queries”) and the URLs it returned from those searches. This data is from our Ahrefs Brand Radar.
- She then ran those exact same search queries through Google to see what URLs Google would return
- She measured how often ChatGPT’s returned URLs appeared in Google’s top 10, top 20, and anywhere in Google’s search results.

On average, ChatGPT pulls 1.78 search queries per prompt, with 75% of prompts triggering exactly two searches.
So, there’s no clear indication that ChatGPT is solely or predominantly using Google as their search engine.
ChatGPT likely uses a hybrid approach where they retrieve search results from various sources, e.g. Google SERPs, Bing SERPs, their own index, and third-party search APIs, and then combine all the URLs and apply their own re-ranking algorithm.
Final thoughts
ChatGPT doesn’t appear to be “secretly Google-powered.” Instead, it seems to use a sophisticated multi-source approach.
This makes sense from a product perspective.
OpenAI likely wants to reduce dependence on any single search provider while optimizing for their specific use case: providing accurate, contextual answers rather than general web discovery.
Any questions or comments? Let me know on LinkedIn.
Similar Posts
Understanding the Difference Between Cache Keys and Cache Tags in Drupal
I recently got this this question via the feedback form on the bottom of the Cache API Overview tutorial: “What is the difference between cache keys and cache tags? Why do I need a tag for node:5 when I can just invalidate it using a partial key like [‘node’, 5]?” After digging into the topic…
What is Drupal.displace() and why should I care?
Note: This is a guest post by Mike Herchel, an official maintainer of Drupal core’s CSS subsystem as well as Drupal’s default theme, Olivero. He’s also a founder of Dripyard premium Drupal themes. While working on a Drupal core bug in the Navigation module’s toolbar, I discovered the issue was related to the usage of…
How to Lock or Unlock Your Domain: A Guide to What a Domain Lock Is and What it Does
Welcome to our guide on locking and unlocking your domain name. Your domain name is your business’ virtual address. If you’re creating a website for your business, it’s important to understand how to secure your domain name. In this guide, we’ll explore the world of domain locks and explain what they are, why they matter,…
How to Analyze a Sudden Drop in Website Traffic [With Template]
A sudden drop in organic traffic can feel like an SEO nightmare. Rankings dip, visibility declines, and conversions take a hit—leaving you scrambling for answers. But instead of panicking, you need a structured approach to diagnose the issue, take corrective action, and restore your site’s performance. Here’s exactly how to analyze a sudden drop in…
AI Content Creation: My Process for High-Quality, SEO-Friendly Articles
AI can write, but let’s be honest; it can also sound (dare I say) robotic. Without a clear process, AI-generated content can feel generic, miss SEO opportunities, or just not sound like you. The trick? Use AI as a tool, not a shortcut. This AI content creation process helps you: Get AI to generate usable content…
The 7 Phases of the Search Demand Lifecycle: Going Beyond Search Volume
Many junior SEOs make the same mistake: they chase high search volume, assuming it means long-term opportunity. But search volume alone is completely misleading. A keyword with 50,000 searches/month sounds like a goldmine, until you realize it’s already in decline. Investing in a fading trend is like buying MySpace stock today. Every keyword follows a lifecycle…
