Safe Official docs Search Engines

DuckDuckBot

Operated by DuckDuckGo

Quick Facts

User-Agent:
DuckDuckBot
Category:
Search Engines
Operator:
DuckDuckGo
Safety:
Safe
Blocking Impact:
Critical - Blocking removes you from search results
SEO Impact Score:
10/10
Official docs:
duckduckgo.com

Confirmed by the operator

DuckDuckGo names DuckDuckBot on its own documentation page, linked above. The token, purpose and robots.txt behaviour on this profile come from that page, re-checked on October 19, 2026.

What is DuckDuckBot?

DuckDuckBot is the web crawler for DuckDuckGo. While DuckDuckGo largely sources results from Bing, this bot is used for favicon fetching and other specific indexing tasks.

DuckDuckBot is the web crawler for DuckDuckGo. While DuckDuckGo largely sources results from Bing, this bot is used for favicon fetching and other specific indexing tasks.
DuckDuckBot is a production-grade search engine crawler operated by DuckDuckGo. It uses a distributed crawl infrastructure that respects crawl-delay directives, follows RFC 9309 (robots.txt) spec, and processes Sitemaps to prioritise fresh content. The user-agent string DuckDuckBot must be whitelisted if your site uses rate-limiting or WAF rules. Blocking impact is Critical - Blocking removes you from search results.

What happens if you block DuckDuckBot?

⛔ Critical Impact - Blocking DuckDuckBot will stop DuckDuckGo from crawling and indexing your pages. Within days or weeks you may see pages drop out of DuckDuckGo's search index entirely, resulting in a significant loss of organic search traffic. This is the most severe possible SEO consequence. Only do this intentionally, for example if you are migrating to a different search engine or decommissioning a domain. If you accidentally blocked DuckDuckBot, remove the rule immediately and request re-indexing via DuckDuckGo's webmaster tools.
Never block - it will remove your site from major search results.

How to block DuckDuckBot with robots.txt

<code>User-agent: DuckDuckBot</code> - Matching is case-insensitive. Robots.txt is fetched from the root of each subdomain separately.

Block completely (robots.txt)
User-agent: DuckDuckBot Disallow: /
Allow all (robots.txt)
User-agent: DuckDuckBot Allow: /
Block private only (robots.txt)
User-agent: DuckDuckBot Disallow: /private/ Disallow: /api/ Disallow: /admin/ Allow: /
Nginx server block
# Nginx: Hard-block DuckDuckBot if ($http_user_agent ~* "DuckDuckBot") { return 403 "Bot blocked"; }
Apache .htaccess
# Apache: Hard-block DuckDuckBot SetEnvIfNoCase User-Agent "DuckDuckBot" bad_bot Order Allow,Deny Allow from all Deny from env=bad_bot
Meta robots tag
<meta name="robots" content="noindex, nofollow">
X-Robots-Tag header
X-Robots-Tag: noindex, nofollow

Is DuckDuckBot safe to allow?

Yes, DuckDuckBot is a safe and legitimate crawler. It is operated by DuckDuckGo, which publicly documents its crawler at an official URL and follows the Robots Exclusion Protocol (RFC 9309). The user-agent string DuckDuckBot is verifiable via reverse-DNS lookup on the crawling IP addresses. You can safely allow it unless you have a specific reason to block (e.g., AI training opt-out or SEO tool visibility).
Verify by reverse-DNS lookup: legitimate DuckDuckBot requests resolve to duckduckgo's domain.

What does DuckDuckBot do?

Understanding DuckDuckBot's purpose helps you decide whether to allow or block it.

  • Crawls and indexes web pages for search results
  • Discovers new and updated content on your website
  • Analyzes page structure, content, and links for ranking
  • Renders JavaScript to understand dynamic content
  • Checks for mobile-friendliness and page speed

DuckDuckBot in context

DuckDuckBot is a search engine crawler operated by DuckDuckGo. In plain terms, it builds a search or answer index. Our database files it under search engines and ranks it Tier 3, mid-priority crawlers with a clear purpose but a smaller audience. 62 of the 63 search engines in our database share this tier.

Its safety rating is safe and its blocking impact is critical. So DuckDuckBot is both well behaved and costly to lose: the strongest case for allowing it. How we rate safety and impact.

How site owners treat DuckDuckBot

Our robots.txt study of the Tranco top 10,000 did not track DuckDuckBot as a named token, so we do not publish an adoption figure for it. If you run a large site, your own logs are the best evidence of how often it visits.

Does it follow robots.txt?

DuckDuckBot's operator does not clearly document how it treats robots.txt. Write the DuckDuckBot rule anyway, then confirm in your logs that its requests stop.

DuckDuckGo crawlers and close alternatives

DuckDuckBot is one of 2 DuckDuckGo crawlers in our database. A User-agent: DuckDuckBot group controls DuckDuckBot only; the other DuckDuckGo tokens below need their own lines.

  • DuckDuckBot: this crawler (Tier 3)
  • DuckAssistBot: DuckDuckGo AI, fetches a page when a person asks an assistant or app to open it (Tier 2)

To give DuckDuckBot the same answer as its siblings, stack User-agent: DuckDuckBot with their lines above one set of rules; to treat DuckDuckBot differently, give it its own group.

Other search engines that do the same job (builds a search or answer index) include Amzn-SearchBot from Amazon, Applebot from Apple, baidu from Baidu, Baiduspider from Baidu, Baiduspider-favo from Baidu, Baiduspider-image from Baidu. Deciding about DuckDuckBot is usually a decision about the whole group, so check how your file treats these too.

We first recorded DuckDuckBot on March 17, 2026. DuckDuckGo documents it on duckduckgo.com, and we recheck that page before each release.

Which rule DuckDuckBot actually follows

DuckDuckBot reads exactly one group in robots.txt, the most specific one that names DuckDuckBot, and never combines rules across groups. This short file shows the trap:

User-agent: *
Disallow: /private/

User-agent: DuckDuckBot
Disallow: /drafts/
  1. Find the group. DuckDuckBot looks for a group naming DuckDuckBot. One exists, so it ignores User-agent: * completely.
  2. Apply only that group. It is refused /drafts/ and nothing else.
  3. The surprise. /private/ is open to DuckDuckBot, because that rule lives in the * group it no longer reads. To keep it out of both, repeat Disallow: /private/ inside its own group.
Test yourself: does a rule under User-agent: * apply to DuckDuckBot if the file also has a User-agent: DuckDuckBot group?

No. Once a group names it, DuckDuckBot reads only that group. Put every rule you want it to follow inside its own group.

Test yourself: will blocking DuckDuckBot remove your pages from AI answers?

Often, yes. DuckDuckBot is a search engine crawler, so pages it cannot fetch can drop out of the answers or results it supports.

Related: how AI engines choose their sources

Test yourself: is User-agent: duckduckbot the same as User-agent: DuckDuckBot?

Yes. RFC 9309 makes user-agent matching case-insensitive. Paths are a different story: Disallow: /Blog/ does not block /blog/.

Should you allow DuckDuckBot? Decide by situation

Recommended setting for DuckDuckBot by type of site
If you are...Recommended setting
You publish content and want AI answers to cite itAllow it. It is how this search engine finds your pages.
You license content and want to stop AI trainingBlocking it does not stop training, because DuckDuckBot is a search engine crawler. Block the operator's training crawler instead.
You run an online shopAllow it unless it is overloading your servers.
Your server is under load from botsRate-limit before blocking. It is rated safe in our database.

Check DuckDuckBot on your own site

  1. Open /robots.txt on your domain and search for DuckDuckBot. If it is not named, it follows User-agent: *.
  2. List the Disallow lines in the group DuckDuckBot follows and test your key URLs against them; the longest match wins, and Allow wins a tie.
  3. Look beyond the file. A firewall or bot manager can refuse DuckDuckBot even when robots.txt allows it, and that never shows in the file.
  4. Run our LLM crawler checker to see how DuckDuckBot and every other crawler we track are treated in one pass, including firewall refusals.

Common mistakes with DuckDuckBot

The errors we see most often with DuckDuckBot in the files and firewalls we test:

  1. Blocking DuckDuckBot to save bandwidth and then wondering why pages drop out of that search engine. Use crawl-rate settings or caching first.
  2. Writing a User-agent: DuckDuckBot group to add one rule for DuckDuckBot and accidentally dropping every rule it used to follow under User-agent: *.
  3. Disallowing CSS and JavaScript folders, which can stop DuckDuckBot rendering your pages properly.

All three hide inside a file that looks correct, so check DuckDuckBot from outside after every change.

Spotting DuckDuckBot in your logs

robots.txt says what DuckDuckBot may do; your access logs show what it actually did.

Count requests

On a server with standard Nginx or Apache logs, this counts matching requests per day (adjust the log path for your host):

grep -iE "DuckDuckBot" /var/log/nginx/access.log \
  | awk '{print $4}' | cut -d: -f1 | sort | uniq -c

And this shows which paths it requested most, which is the quickest way to see whether your Disallow lines are being respected:

grep -iE "DuckDuckBot" /var/log/nginx/access.log \
  | awk '{print $7}' | sort | uniq -c | sort -rn | head -20

Check the requests are genuine

Anyone can send the DuckDuckBot user-agent, so confirm the source before acting on a match:

  • DuckDuckBot: we hold no published IP list, so use reverse DNS where the operator documents a hostname and treat an unverifiable DuckDuckBot request with caution.

Frequently Asked Questions

What is the official user-agent string for DuckDuckBot?
The official user-agent string for DuckDuckBot is: DuckDuckBot. This is the exact string you must use in robots.txt, Nginx, Apache, or Cloudflare firewall rules to target this bot. User-agent matching in robots.txt is case-insensitive, but the string must be spelled correctly. You can verify that a request genuinely comes from DuckDuckBot by performing a reverse-DNS lookup on the source IP - legitimate bots resolve back to their operator's domain.
Is DuckDuckBot safe?
Yes, DuckDuckBot is a safe and legitimate crawler. It is operated by DuckDuckGo, which publicly documents its crawler at an official URL and follows the Robots Exclusion Protocol (RFC 9309). The user-agent string DuckDuckBot is verifiable via reverse-DNS lookup on the crawling IP addresses. You can safely allow it unless you have a specific reason to block (e.g., AI training opt-out or SEO tool visibility).
Will blocking DuckDuckBot hurt my SEO?
⛔ Critical Impact - Blocking DuckDuckBot will stop DuckDuckGo from crawling and indexing your pages. Within days or weeks you may see pages drop out of DuckDuckGo's search index entirely, resulting in a significant loss of organic search traffic. This is the most severe possible SEO consequence. Only do this intentionally, for example if you are migrating to a different search engine or decommissioning a domain. If you accidentally blocked DuckDuckBot, remove the rule immediately and request re-indexing via DuckDuckGo's webmaster tools.
How do I block DuckDuckBot in robots.txt?
Add the following lines to your /robots.txt file:
User-agent: DuckDuckBot
Disallow: /

This instructs DuckDuckBot not to crawl any path on your site. The Disallow: / directive covers the entire domain including subfolders. To only block specific sections, replace / with the path (e.g., Disallow: /blog/). Note: robots.txt is publicly readable - any bot or human can inspect it at yourdomain.com/robots.txt.
Does DuckDuckBot respect robots.txt?
Yes - DuckDuckBot is a well-behaved bot operated by DuckDuckGo. It fetches and parses /robots.txt before crawling any page, following RFC 9309.
How do I verify if DuckDuckBot is crawling my site?
Search your web server access logs for the string DuckDuckBot (case-insensitive grep: grep -i "DuckDuckBot" /var/log/nginx/access.log). You can also check Google Search Console → Coverage → Crawl Stats for Googlebot variants. For DuckDuckBot specifically, filter by user-agent in your log analysis tool (GoAccess, AWStats, etc.).
What is the crawl frequency of DuckDuckBot?
Critical-impact search crawlers like DuckDuckBot typically crawl popular pages daily and less popular pages weekly. You can manage crawl rate via the crawl-delay directive or via the search console.
Can I block DuckDuckBot from specific pages only?
Yes. Instead of a global Disallow: / you can restrict DuckDuckBot to specific paths:
User-agent: DuckDuckBot
Disallow: /private/
Disallow: /staging/
Allow: /

This allows DuckDuckBot everywhere except the listed paths. Path matching in robots.txt uses prefix matching - Disallow: /private/ blocks /private/page.html but NOT /public/private/.
How do I check if DuckDuckBot is blocked by my robots.txt?
Use Google's robots.txt Tester in Search Console, or a third-party checker to simulate a DuckDuckBot request. You can also manually check by opening https://aicrawlercheck.com/robots.txt and scanning for DuckDuckBot entries. If a block exists, immediately test it against your most important URLs using the Google Search Console URL Inspection tool.
My site is blocked by DuckDuckBot in Search Console - what do I do?
1. Open yourdomain.com/robots.txt and look for any User-agent: DuckDuckBot or User-agent: * Disallow rules covering your key pages.
2. Remove or restrict the blocking rules.
3. Validate via Google Search Console → robots.txt Tester.
4. Request re-indexing using the URL Inspection tool.
5. Wait 1-2 weeks for re-crawl. Monitor Coverage report for recovery.
WhatsApp us