John Cole

Jul 15, 2026 • 3 min read

How to Check Where Your Site Ranks on DuckDuckGo

Track your DuckDuckGo rankings with a pay-per-use scraper API: organic positions as JSON, scheduled daily checks, and MCP access from Claude.

I kept getting different answers every time I checked where my site ranked. Search on my laptop, search on my phone, ask a colleague in another city, and the position moved. Personalized search does that. So I started checking on DuckDuckGo, which does not build a profile or tailor results, and finally had a number I could trust.

To check where your site ranks on DuckDuckGo, run your target query through a DuckDuckGo scraper API and read the position field on the organic result that matches your domain. Because DuckDuckGo does not personalize, that position is the one your audience sees too.

[[I

MG1]]

What the scraper returns

Each run gives you one JSON item per page of results. For rank checking, the organic block is what matters:

  • Position, title, link, and snippet for every organic result

  • Ads and knowledge graph entries when DuckDuckGo shows them

  • News, inline images and videos, and related searches

Check a ranking in three steps

  • Set your query and pick a region from 40+ options (for example us-en or uk-en).

  • Run the Actor and read the organic results array.

  • Find the entry whose link is your domain and note its position.

Use it as a REST API

The Actor runs from the Apify API. Send the query as JSON and read the dataset when the run finishes:

POST /v2/acts/johnvc~DuckDuckGo-Scraper-for-serp-rankings/runs

{
 "query": "best crm for startups",
 "localization": "us-en",
 "max_pages": 2
}

Pricing is pay-per-event: $0.001 per run plus $0.002 per page, so a daily check on a handful of keywords costs pennies a month.

[[I

MG2]]

Wire it into Claude with MCP

The Actor is available through the Apify MCP server, so Claude or any MCP client can call it as a tool. Ask "check where example.com ranks on DuckDuckGo for best crm for startups in us-en" and the agent runs the scraper and reads back the position, no code required.

What people build with it

Save your queries as tasks, attach a daily schedule, and you have a rank tracker that builds history over time. Beyond rank checking, people use it to watch competitor positions, monitor news, and feed an agent live search. Browse the runnable recipes on the examples page or open the DuckDuckGo Search API project.

A couple of ready-made starting points:

FAQ About Checking DuckDuckGo Rankings

How does this DuckDuckGo scraper get an accurate position?

DuckDuckGo does not personalize results, so the scraper reads the same ranking for a given region that a real visitor would see. You get the raw organic order with a position number on each result.

Can I call the ranking check as an API?

Yes. Send a query to the Actor over the Apify REST API and read the organic results from the dataset as JSON or CSV. Each run costs $0.001 plus $0.002 per page.

Can an AI agent check rankings for me over MCP?

Yes. Through the Apify MCP server, Claude or any MCP client calls the scraper as a tool and returns the position in plain language, with no code.

How often can I track rankings?

As often as you schedule it. Save the query as a task and attach a daily or hourly schedule to build a ranking history you can chart.

Issues opened on the Actor page are usually answered within a day.

Join John on Peerlist!

Join amazing folks like John and thousands of other builders on Peerlist.

peerlist.io/

It’s available... this username is available! 😃

Claim your username before it's too late!

This username is already taken, you’re a little late.😐

0

0

0