AI bots · DuckDuckGo DuckAssistBot: DuckDuckGo’s AI answers crawler
DuckAssistBot fetches pages in real time for DuckDuckGo’s AI-assisted answers. Here is what DuckDuckGo publishes about it, linked to the source, plus rules to copy.
- Search / AI answers
- Follows robots.txt
- Official IP list
DuckAssistBot at a glance
What DuckDuckGo publishes about DuckAssistBot, with a link to the page each fact comes from. Copy the robots.txt rule you need, or check whether an IP really belongs to it.
What the operator says about DuckAssistBot
Each row links to the page it comes from. “Not published” means we could not find it in the operator’s own documentation.
| Fact | Value | Source |
|---|---|---|
| Operator | DuckDuckGo | Source |
| Official documentation | duckduckgo.com | Source |
| robots.txt token | DuckAssistBot | Source |
| What it is used for | Search / AI answersDuckDuckGo says DuckAssistBot crawls pages in real time for its AI-assisted answers, which cite their sources. | Source |
| Follows robots.txt | YesDuckDuckGo says disallowing DuckAssistBot in robots.txt opts a site out of being a source for AI-assisted answers, effective after 72 hours. | Source |
| Official IP list | duckduckgo.com/duckassistbot.json | Source |
| How to verify | IP listDuckDuckGo publishes DuckAssistBot’s IP addresses in duckassistbot.json; check the source IP against it. It gives no reverse-DNS method. | Source |
| Checked on | — |
DuckAssistBot/1.2; (+http://duckduckgo.com/duckassistbot.html)As published by the operator.
robots.txt rules
Add one of these groups to the end of your robots.txt. The token is matched case-insensitively.
User-agent: DuckAssistBot
Disallow: /User-agent: DuckAssistBot
Allow: /A group named for DuckAssistBot replaces your User-agent: * rules for it. To keep it out of one folder only, change / to that folder, e.g. Disallow: /private/.
Check a request really came from DuckAssistBot
Check an IP against the official list
Open duckduckgo.com/duckassistbot.json, copy everything and paste it below with the IP from your log. The check runs in your browser.
JSON or one range per line. IPv4 and IPv6 ranges are both read.
Paste an IP address to check it.
Also from the operator’s documentation
Version v1.0Updated Update history
Four facts that decide what to do
Every crawler page has the same table. These four rows answer most questions about a crawler.
What it is used for
Training, search or a user’s request. Blocking a training crawler keeps your pages out of future models; blocking a search crawler also removes you from answers that would have linked back.
Follows robots.txt
“Yes” is the operator’s own statement. “Partly” usually means fetches a person starts may skip robots.txt — ChatGPT-User, Perplexity-User and meta-externalfetcher say so.
Official IP list / reverse DNS
The only way to tell a real crawler from one that copies its user agent. If neither is published, the user agent is just a claim.
Not published
We could not find it in the operator’s own documentation. We do not fill gaps from third-party lists — those disagree with each other and go stale.
Facts were checked against the operators’ pages on the date shown on each crawler page. Operators change their docs; the source link is the place to confirm.
From a name in your logs to a rule
Four steps, all in the browser.
-
1
Find the crawler
Type the name from your logs or the company you are thinking of. Filter by purpose to see, say, every AI training crawler.
-
2
Open its page
Read what the operator says it is for and whether it follows robots.txt. Copy its official user agent to compare with your logs.
-
3
Build the rules
Tick crawlers in the table, choose Block or Allow, then copy or download the robots.txt groups.
-
4
Check the effect
Test the file with the robots.txt tester, and use the IP check on a crawler page to confirm a request is genuine.
How crawlers are grouped and how robots.txt applies
The directory groups crawlers the way TapCub’s bot rules do. robots.txt matching follows RFC 9309: a crawler obeys the one group whose User-agent matches its token, and only falls back to * when no group names it.
- A crawler with its own group ignores every
User-agent: *rule - Tokens are matched without regard to case; a typo matches nothing
- Some names are tokens only — Google-Extended and Applebot-Extended never visit
- Agents without a published token cannot be addressed in robots.txt at all
| Group | What it does | Effect of blocking |
|---|---|---|
| AI training | Collects pages for model training or datasets | Your future pages stay out of that operator’s training, if it follows robots.txt |
| AI search | Indexes pages for AI answers with links | You stop appearing as a cited source |
| AI agent | Opens a page for a person’s request | Assistants cannot open your page — when the agent honours robots.txt at all |
| Search engine | Classic search index | You leave that search engine; some, like Bing, also feed AI answers |
How four robots.txt files treat DuckAssistBot
DuckAssistBot reads the group whose User-agent line matches DuckAssistBot (case does not matter). If there is none it falls back to User-agent: *.
| robots.txt | Result for DuckAssistBot | Why |
|---|---|---|
User-agent: DuckAssistBot Disallow: / | Blocked | Its own group disallows the whole site. |
User-agent: * Disallow: / | Blocked | No group of its own, so it inherits the wildcard. |
User-agent: * Disallow: / User-agent: DuckAssistBot Allow: / | Allowed | A named group replaces the wildcard completely; the * rules no longer apply to it. |
User-agent: DuckAssistBot Disallow: /private/ | Allowed except /private/ | Only paths that start with /private/ are off limits. |
This is how the rules read under RFC 9309. Whether DuckAssistBot follows them is DuckDuckGo’s statement in the facts table above.
Where AI crawler policies go wrong
Most problems come from the token or from what the crawler actually is.
Using a company name as the token
“OpenAI”, “Anthropic” or “ChatGPT” are not tokens. Use the exact token from the directory — GPTBot, ClaudeBot, OAI-SearchBot.
Blocking search with training
Blocking OAI-SearchBot or PerplexityBot removes you from AI answers that would link back. Decide per crawler, not per company.
Trusting the user agent
Anyone can send “GPTBot” in a header. Without an IP or reverse-DNS check the request is unverified.
Blocking by IP and losing the opt-out
Anthropic and Cohere warn that blocking their IPs stops them reading robots.txt, so the opt-out may not stick.
See which crawlers actually came
The directory tells you what crawlers say they do. TapCub separates humans from bots with five detection layers and 197+ rules, and reports AI crawlers on their own.
Bot and AI crawler report
User agent, headers, client signals, ASN and rate — five layers that keep bots out of your human numbers.
Learn moreAI content ledger
Pages each AI crawler read next to the visitors it sent back.
Learn moreCrawl health and compliance
Compare robots.txt and llms.txt with what actually crawled you — evidence for a decision.
Learn moreDuckAssistBot questions
Still have a question?
Chat with the team behind TapCub — we usually reply within a few hours on business days.
What is DuckAssistBot?
DuckAssistBot is run by DuckDuckGo. DuckDuckGo says DuckAssistBot crawls pages in real time for its AI-assisted answers, which cite their sources.
Does DuckAssistBot respect robots.txt?
DuckDuckGo says disallowing DuckAssistBot in robots.txt opts a site out of being a source for AI-assisted answers, effective after 72 hours.
How do I block DuckAssistBot?
Add User-agent: DuckAssistBot and Disallow: / to robots.txt, in its own group. DuckDuckGo says it follows those rules. To keep it out of one folder only, use Disallow: /folder/ instead.
How can I tell a request really came from DuckAssistBot?
DuckDuckGo publishes DuckAssistBot’s IP addresses in duckassistbot.json; check the source IP against it. It gives no reverse-DNS method.
Does blocking DuckAssistBot remove me from DuckDuckGo search?
No. DuckDuckGo says opting out does not affect organic rankings or whether your site appears in search results — only whether it is a source for AI-assisted answers.
Does DuckDuckGo train AI on what DuckAssistBot reads?
DuckDuckGo says the data is not used in any way to train AI models.
Update history
New features, fixes and data refreshes for this tool, newest first.
-
· v1.0
LaunchedFirst release.
Data this tool relies on
- Bot and AI crawler rules (same as the TapCub product) — checked 2026-11-10, reviewed every 3 months (next review by 2027-02-10)
- AI crawler operator documentation — checked 2026-11-09, reviewed every 3 months (next review by 2027-02-09)
Missing something or found an error? Tell us — requests that come up often go into the next update. All tool updates
Rules state intent. Logs show behaviour.
Install the ≈2 KB script and TapCub separates humans, search engines and AI crawlers from the first visit — free plan included.