---
title: "DuckDuckBot: user agent, token, block rate | Agent Ready Crawlers"
description: "DuckDuckBot from DuckDuckGo: exact user-agent string, robots.txt token DuckDuckBot, search index purpose and how to verify it. Read 2026-11-04."
canonical: https://agentreadycrawlers.com/crawlers/duckduckbot
site: "Agent Ready Crawlers"
last_updated: 2026-11-04
section: "Crawlers"
---

# DuckDuckBot: user agent, token, block rate | Agent Ready Crawlers

> DuckDuckBot from DuckDuckGo: exact user-agent string, robots.txt token DuckDuckBot, search index purpose and how to verify it. Read 2026-11-04.

Source: https://agentreadycrawlers.com/crawlers/duckduckbot
Site: Agent Ready Crawlers
Last reviewed: 2026-11-04

Search index crawler from DuckDuckGo

# DuckDuckBot

In short

DuckDuckBot is DuckDuckGo's search index crawler. The token to write in robots.txt is DuckDuckBot. Check a visitor against the operator's published IP list. The crawl of 2026-11-04 did not measure DuckDuckBot. Its user-agent entry: DuckDuckBot/1.1; (+http://duckduckgo.com/duckduckbot.html). Builds a search index that sends visitors back. Refusing it removes pages from that product. On robots.txt, DuckDuckGo: DuckDuckBot respects robotstxt.org.

Operator

[DuckDuckGo](https://agentreadycrawlers.com/crawlers/operator/duckduckgo/) Vendor profile: [DuckDuckGo](https://agentreadycrawlers.com/vendors/duckduckgo/)

Purpose

Search index [All search index rows](https://agentreadycrawlers.com/crawlers/purpose/search-index/). Builds a search index that sends visitors back. Refusing it removes pages from that product.

User-agent string

`DuckDuckBot/1.1; (+http://duckduckgo.com/duckduckbot.html)`

robots.txt token

`DuckDuckBot` Matched case-insensitively (RFC 9309). The token and the user-agent string are different things.

Respects robots.txt

Yes, per operator

DuckDuckGo: DuckDuckBot respects robotstxt.org. [Source](https://duckduckgo.com/duckduckgo-help-pages/results/duckduckbot), read 2026-11-04.

Verification

Published IP list (JSON)

Match the source address of a request against the operator's published list. [Documentation](https://duckduckgo.com/duckduckbot.json), read 2026-11-04.

IP ranges

[duckduckgo.com/duckduckbot.json](https://duckduckgo.com/duckduckbot.json)

Rate behaviour

Not published.

Block rate

Not measured: the crawl checked 31 AI and search tokens, and `DuckDuckBot` is not one of them.

Documentation

[duckduckgo.com](https://duckduckgo.com/duckduckgo-help-pages/results/duckduckbot), read 2026-11-04.

Note. Search crawler, separate from DuckAssistBot.

## Allow and refuse lines

### To allow DuckDuckBot

User-agent: DuckDuckBot
Allow: /

### To refuse DuckDuckBot

User-agent: DuckDuckBot
Disallow: /

Refusing or allowing in robots.txt states a preference. Enforcement of a refusal belongs in your WAF; see how to verify the identity above.

## DuckDuckGo in the Verification Ledger

Two IP lists. [All operators](https://agentreadycrawlers.com/verification/).

IP lists

-   [duckduckgo.com/duckassistbot.json](https://duckduckgo.com/duckassistbot.json)
-   [duckduckgo.com/duckduckbot.json](https://duckduckgo.com/duckduckbot.json)

Reverse DNS

publishes nothing

Key directory

publishes nothing

Cloudflare

not checked

Visa TAP registry

no public operator-level registration found (checked 2026-11-04)

Mastercard Agent Pay

no public operator-level registration found (checked 2026-11-04)

## Other DuckDuckGo rows

-   [DuckAssistBot](https://agentreadycrawlers.com/crawlers/duckassistbot/) Live answer fetch token DuckAssistBot

## Sources

-   [duckduckgo.com: duckduckbot](https://duckduckgo.com/duckduckgo-help-pages/results/duckduckbot) read 2026-11-04
-   [duckduckgo.com: duckduckbot (JSON)](https://duckduckgo.com/duckduckbot.json) read 2026-11-04
-   [duckduckgo.com: duckassistbot](https://duckduckgo.com/duckduckgo-help-pages/results/duckassistbot) read 2026-11-04

Last reviewed 2026-11-04
