DuckDuckGo Search Results Scraper
Pricing
from $8.25 / 1,000 items
DuckDuckGo Search Results Scraper
Scrapes DuckDuckGo search results for a list of queries and returns each result as a flat row with title, URL, description, and rank position. Supports region, time range, and SafeSearch filters.
Pricing
from $8.25 / 1,000 items
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
9
Total users
1
Monthly active users
12 days ago
Last modified
Share
DuckDuckGo Search Results Scraper
Scrape DuckDuckGo search results for any keyword, up to a million per run. Every result comes with its title, URL, description, and rank position. Filter by region, time range, and SafeSearch level. Export to CSV, JSON, Excel, or XML.
DuckDuckGo's privacy-first design means there is no official search API to apply for. This Actor reads the public search result pages directly, so you can collect organic listings for any keyword without registration or rate-limit headaches. It returns a clean, flat dataset of titles, URLs, descriptions, and ranks, ready for your SEO toolchain or content research.
| Who uses it | What they scrape DuckDuckGo for |
|---|---|
| SEO specialists | Track keyword rankings and featured snippet appearances on DuckDuckGo. |
| Market researchers | Map the competitive landscape for a set of industry terms. |
| Content strategists | Discover what content ranks for target topics to find content gaps. |
| Brand managers | Monitor brand mentions and sentiment across DuckDuckGo's organic results. |
What it does
This Actor collects DuckDuckGo search results for a list of queries and returns each result as a flat row with its title, URL, description, and position.
- ๐ Region targeting: 34 region codes including
us-en,uk-en,de-de,br-pt, andjp-jpto see results as a local user would. - โฑ๏ธ Time range filter: restrict results to the past day, week, month, or year to focus on fresh content.
- ๐ SafeSearch control: set filtering to
off,moderate, orstrictto match your research needs. - ๐ Bulk query input: paste a list of keywords and collect results for all of them in a single run.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with DuckDuckGo data
๐ Track keyword rankings on DuckDuckGo.
An SEO agency runs a weekly scrape for 500 client keywords with region set to us-en and time range w to report on ranking movements and new competitors.
๐ Compare search results across regions.
A market researcher runs the same query against us-en, de-de, and br-pt to understand how local content and competitors differ by market.
๐ Find content gaps for a topic cluster.
A content strategist scrapes the top 50 results for a head term, then analyzes titles and descriptions to identify subtopics the existing content library does not cover.
๐ก๏ธ Monitor brand presence on a private search engine.
A brand manager runs a daily scrape for the company name with SafeSearch off to catch any unexpected results appearing on DuckDuckGo.
Why choose this scraper
| What you get | |
|---|---|
| No API key needed | Start scraping immediately without registering an application or managing OAuth tokens. |
| Fixed flat schema | Every result row has the same columns: title, URL, description, and rank. No nested objects to flatten. |
| Localized results | Switch between 34 region codes to see exactly what a user in Germany, Brazil, or Japan sees. |
| Freshness control | Limit results to the past day, week, month, or year to analyze only recent content. |
How it compares
This Actor focuses on delivering clean, flat organic search results at scale, while other DuckDuckGo scrapers may include additional verticals or structured data extracts.
| Feature | ParseForge | DuckDuckGo Scraper (56 users) | DuckDuckGo Scraper (104 users) |
|---|---|---|---|
| Organic web results | Yes | Yes | Yes |
| Region filtering (34 codes) | Yes | Not listed | Not listed |
| Time range filter (day, week, month, year) | Yes | Not listed | Not listed |
| SafeSearch control | Yes | Not listed | Not listed |
| Ads extraction | Not listed | Yes | Not listed |
| Knowledge graph extraction | Not listed | Yes | Not listed |
Configure the run
Drive the Actor with a list of search queries, and optionally narrow results by region, time range, and SafeSearch level so only the most relevant rows land in your dataset. The Input tab lists every parameter.
A first run with the defaults:
{"maxItems": 10,"queries": ["apify scraper"],"region": "us-en","safeSearch": "moderate"}
A larger pull:
{"maxItems": 200,"queries": ["apify scraper"],"region": "us-en","safeSearch": "moderate"}
Pricing
Pay-per-result: $0.011 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $1.10 |
| 1,000 results | $11.00 |
| 10,000 results | $110.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the DuckDuckGo Search Results Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to DuckDuckGo through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/duckduckgo-search-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting fewer results than my maxItems setting?
DuckDuckGo may return fewer results than requested for some queries, especially very specific or long-tail keywords. Try a broader query or remove the time range filter to see if more results become available.
Why do results look different from what I see in my browser?
Check your region setting. DuckDuckGo personalizes results by country. Set the region code to match the location you want to emulate, such as us-en for the United States.
The Actor is running but not collecting any results.
DuckDuckGo may be showing a CAPTCHA or blocking the request. Try reducing the number of concurrent queries, adding a delay between requests, or using Apify proxy to rotate IP addresses.
Can I get more than a few hundred results per query?
DuckDuckGo typically caps its infinite scroll at a few hundred results per query. To collect more data, try breaking your topic into multiple, more specific queries and running them together.
Why are some results missing a description?
DuckDuckGo sometimes shows results without a description snippet, especially for certain site types or very new pages. This is normal behavior from the search engine itself.
FAQ
| Question | Answer |
|---|---|
| Does this Actor use the DuckDuckGo API? | No. It reads the public HTML search result pages directly, so you do not need an API key or any registration. |
| How many results can I get per query? | DuckDuckGo's infinite scroll typically returns several hundred results per query. The Actor collects until it hits your maxItems limit or exhausts the available results. |
| Can I scrape image or video results? | This Actor focuses on the standard web search results. It does not extract image, video, or news verticals. |
What does the region code wt-wt mean? | wt-wt is DuckDuckGo's code for no region filtering. It returns a global mix of results without localization. |
| Is SafeSearch enabled by default? | Yes, the default is moderate. You can change it to off or strict in the input settings. |
| Can I run multiple queries in one Actor run? | Yes. Add as many queries as you need to the queries array, and the Actor will process them sequentially in a single run. |
| Does this Actor handle DuckDuckGo's infinite scroll? | Yes. It automatically scrolls the results page to load more listings until it reaches your requested maximum or no more results are available. |
| What export formats are supported? | You can export your dataset in CSV, JSON, Excel, or XML from the Apify platform. |
| Can I filter results by date? | Yes. Use the timeRange field to restrict results to the past day (d), week (w), month (m), or year (y). |
| Is there a limit on how many queries I can run? | There is no hard limit on the number of queries. The maxItems field controls the total results collected across all queries in a run. |
Related actors
Browse the full ParseForge collection for more scrapers.
๐ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
โ ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by DuckDuckGo. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
