ChatGPT Ads Scraper avatar

ChatGPT Ads Scraper

Pricing

from $25.00 / 1,000 ads

Go to Apify Store
ChatGPT Ads Scraper

ChatGPT Ads Scraper

ChatGPT Ads Scraper collects the sponsored ads ChatGPT shows under answers to shopping questions: advertiser, product, price, rating, image and landing page. Use it to see which brands advertise on your topics, check your own ads appear, or track ChatGPT ads over time.

Pricing

from $25.00 / 1,000 ads

Rating

5.0

(3)

Developer

Gytis Ščipokas

Gytis Ščipokas

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

What does ChatGPT Ads Scraper do?

ChatGPT Ads Scraper collects the sponsored ads ChatGPT shows under its answers. Use it as your own ChatGPT ad library and ChatGPT ads tracker: spy on ChatGPT ads from any brand or topic, and pay per run instead of a monthly subscription.

A sponsored Nike ad under a ChatGPT answer

Use cases

  • Competitor monitoring. See which brands advertise for your keywords, which products they push, and at what price.
  • Market research before buying ads. Find out how crowded a category is before you spend on ChatGPT ads.
  • Ad verification. Check that your own ads show up, for which questions, and with the right details.
  • Trend tracking. Schedule daily runs over the same questions and build a history of the ChatGPT ad market.
  • Ad creative research. Collect the headlines, ad copy, images, and prices competitors use, to inspire your own ChatGPT ads.
  • Agency reporting. Show clients who advertises in their category on ChatGPT, and pitch ChatGPT ads with real examples.

How to use it

  1. Open the Input tab.
  2. Add shopping questions to Questions.
  3. Click Start.
  4. Open the Output tab when the run finishes.

Input

FieldDescription
queriesQuestions to ask ChatGPT. Every ad shown in the chat is saved. Name a brand or model ("best Nike running shoes", "Nike Pegasus 42") to steer the chat toward it.
chatsPerItemHow many chats each question gets. Default 24. More chats, more ads. A run costs about $0.045 × questions × chats, plus ads.
followUpQueriesQuestions sent in order after every question, so keep them general, like "Which one should I buy?". Stay on the same topic and ask about buying: a new topic brings ads that get counted under your question. ChatGPT doesn't show ads on the first message, so these keep the chat going. Up to 8. Defaults to four buying questions, also used when left empty.
countryTwo-letter country code, like US, GB, or DE. Chats run from this country, so you see the ads shown there. Default US, where ChatGPT shows the most ads. Write your questions in English: follow-ups are in English too, whatever the country.
saveScreenshotsSaves proof of each ad: a screenshot with the end of ChatGPT's answer above it, and the ad's HTML with all the data ChatGPT sent. Linked from screenshotUrl and htmlUrl. Default off. Adds a few seconds per ad, no extra charge.

See which brands advertise for a topic

{
"queries": ["best running shoes", "best trail running shoes"]
}

Find ads from one brand or model

Name the brand or model in your questions. ChatGPT answers about it, and the follow-ups ask about buying it. Ads from all advertisers are saved, so filter the results by advertiser.

{
"queries": ["best Nike running shoes", "Nike Men's Pegasus 42"]
}

Experimental: generated follow-ups

Turn on Generate follow-ups (generateFollowUps) and AI writes each follow-up from ChatGPT's last answer instead of using Follow-up questions. We're still testing whether it finds more ads. Every chat then sends different messages, so leave it off to compare brands across runs. The AI calls go through OpenRouter, a fraction of a cent per chat, billed to your Apify account separately.

Output example

You get one dataset item per ad:

{
"query": "best running shoes",
"turn": 3,
"message": "Where can I buy it at the best price?",
"country": "US",
"advertiser": "Nike Inc.",
"brand": "Nike Inc.",
"title": "Nike Men's Run Swift 3 Road Running Shoes in Grey, Size: 8",
"body": "No matter the run, the Swift 3 helps you get out the door...",
"price": 85,
"currency": "USD",
"priceText": "$85",
"rating": 4.7,
"imageUrl": "https://files.openai.com/content?id=file_...",
"url": "https://www.nike.com/t/run-swift-3-mens-road-running-shoes-SBE3UoK3/IB3972-021?...",
"format": "product_card_v2",
"displayType": "single_advertiser_ad_unit",
"screenshotUrl": "https://api.apify.com/v2/key-value-stores/.../records/ad-...-3-0.png",
"htmlUrl": "https://api.apify.com/v2/key-value-stores/.../records/ad-...-3-0.html",
"scrapedAt": "2026-10-02T17:39:41.221Z"
}

turn and message tell you which follow-up triggered the ad. screenshotUrl and htmlUrl are null unless Save ad proof is on.

You can download the dataset as JSON, CSV, Excel, or HTML, or get it through the Apify API.

Summary and chats

Chats without ads aren't in the dataset, so two more records in the Output tab show what happened:

  • Summary: for each question, the chats run, adRate (share of chats that showed at least one ad), ads found, and advertisers by ad count. Use adRate to compare questions.
  • Chats: one line per chat attempt, with how it ended:
StatusMeaning
doneRan all its follow-ups.
no-adsNo ad by turn 3, so it was stopped. The first time, it runs again in a new browser, charged once.
blockedChatGPT didn't load. Retried, not charged.
failedBroke mid-chat. Retried, not charged.
cutStopped because the run timeout was near.
skippedIts question had no ads in 8 chats, so it didn't run. Not charged.

So "10 chats, 0 ads" and "blocked 10 times" no longer look the same.

Tips

  • Pick topics advertisers pay for. The topic matters more than the wording. Products like video games, toys, books, shoes, and electronics get the most ads. ChatGPT shows no ads on health, mental health, or politics, and few on relationships or news.
  • Ask shopping questions. "Best X" and "X under $100" work well.
  • Expect empty results. Many chats show no ad, and the same question can return different ads on each run. For reliable data, run the same questions repeatedly, e.g. on a daily schedule.
  • Give it memory. More memory runs more chats at once. With the default 16 GB, a single question with the default 24 chats finishes in under 10 minutes. Add memory for more questions, but leave at least 1 GB of your account's memory limit free, or the run may find fewer ads.

Limitations

  • Most ads are in the US. ChatGPT ads launched in the US. Other countries can be picked with Country, but may return few or no ads.
  • Logged-out view. You see the ads ChatGPT shows to anonymous visitors. Logged-in users may see different ads.
  • Speed. Each chat takes about 2 minutes.

Pricing

Pay per run, no monthly subscription. Two things are charged:

EventPrice
Chat$0.045 for each chat with ChatGPT, with or without ads
Ad$0.025 for each ad saved to the dataset

Platform usage and residential proxies are included. You don't pay extra for:

  • Retries. A chat that gets blocked or shows no ads is run again in a new browser, charged once.
  • Topics with no ads. A question with no ads in 8 chats stops early, and its other chats aren't charged.

Example: one question with the default 24 chats costs $1.08 for the chats, plus $0.025 per ad. Shopping topics often get 2 to 3 ads per chat, so about $2.30 to $2.90 in total. Set Maximum cost per run to cap it. The run stops there and keeps everything found.