Competitive intelligence
Watch Your Competitors on Google, Live
Where they rank for your keywords, the ads they run, the pages they publish, the news they make and how AI answers describe them, each read from a live Google results page in one API call.
{ "searchTime": 0.17, "totalResults": 85000, "page": 1, "organic": [ { "position": 1, "title": "31.10. Connection Pools and Data Sources", "link": "www.postgresql.org/docs/…", "domain": "postgresql.org", "snippet": "For an environment without an application se…" }, { "position": 2, "domain": "medium.com", … }, { "position": 3, "domain": "stackoverflow.blog", … } ], "credits": 1}How do I monitor competitors' Google rankings and ads with an API?
Send POST /rankings/check with your keyword and a competitor's domain to get its position and the page that ranks, and GET /serp for the full results page with its ads, People Also Ask and AI Overview. Every rank check is stored, so the history builds up from your own checks and is free to read.
- Rank check
- 3 credits per 10 results of depth
- Full SERP with ads
- 3 credits per page
- Site and dated search
- 1 credit per query
- Web search success, 14 days to 2026-10-01
- 99.8% of 5.2M calls
What you can watch
Six questions a competitive analyst asks every week, and the call that answers each one.
Who outranks you
POST /rankings/check returns a domain's position for a keyword, the URL that ranks and the domains above it. Run it for each competitor; /rankings/history keeps every check.
3 credits per 10 results of depth
The ads they run
GET /serp returns the whole results page as JSON: the ads with their copy and landing pages, People Also Ask, related searches and the AI Overview.
3 credits per page
What they publish
GET /search/advanced with a site: query and dateRange=week lists the pages on a competitor's domain that Google dates to the last week.
1 credit per query
The news they make
GET /search/news returns the articles that mention them, with source and date.
1 credit per query
How AI answers describe them
GET /search/ai/chatgpt, /perplexity, /gemini or /copilot returns the answer to a buyer's question and the sources it cited, so you see who gets recommended.
2-8 credits per answer
Every page they have
POST /map lists every URL a site publishes, from its robots.txt and sitemaps.
1 credit per site
Three calls to start
Replace YOUR_API_KEY with a key from the dashboard. Each call is independent; run them on a schedule.
curl -X POST "https://api.searlo.tech/api/v1/rankings/check" \
-H "x-api-key: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"keyword": "project management software", "domain": "competitor.com", "depth": 30, "gl": "us"}'curl "https://api.searlo.tech/api/v1/serp?q=project+management+software&gl=us&hl=en" \
-H "x-api-key: YOUR_API_KEY"curl "https://api.searlo.tech/api/v1/search/advanced?q=site%3Acompetitor.com&dateRange=week" \
-H "x-api-key: YOUR_API_KEY"What a weekly competitor report costs
| Check | Call | Credits per week |
|---|---|---|
| Positions to depth 30 for 50 keywords | POST /rankings/batch | 450 |
| Ads and SERP features for 10 money keywords | GET /serp | 30 |
| New pages on their domain | GET /search/advanced | 1 |
| News mentions | GET /search/news | 1 |
| What ChatGPT and Perplexity recommend, 5 questions | GET /search/ai/{engine} | 20-80 |
A weekly competitor report in five steps
- 01List keywords and rivalsWrite down the keywords that bring you customers and the two or three domains you lose them to.
- 02Check positionsSend the keywords and each domain to POST /rankings/batch once a week. History accumulates on its own.
- 03Read their adsCall GET /serp for the keywords where you pay for clicks, and store the ads array.
- 04Find what they shippedCall GET /search/advanced with q=site:theirdomain.com and dateRange=week for new pages.
- 05Diff and alertCompare with last week and send only what changed: a position lost, a new ad, a new page.
FAQ
FAQ
Can I see how a competitor's position changed over time?
Yes. Every POST /rankings/check is stored, and GET /rankings/history returns the series for a keyword and domain at no cost. It holds the checks you ran; it is not a back-filled index.
Can I check rankings in a specific country?
Yes, by country: pass gl, or location with a country name or code. A city or state returns 400 CITY_LOCATION_UNAVAILABLE before any credit is taken.
Do I get the competitor's ad copy?
GET /serp returns the ads on the results page as JSON, alongside the organic results, People Also Ask and the AI Overview. It costs 3 credits per page.
Are results live or cached?
Each call reads Google's results page. Rank checks reuse a matching cached page by default; send cache: false to force a fresh read.
Start with free credits
Sign up and get 3,000 free credits once, enough for weeks of checks on one competitor. No subscription: buy a credit pack when you need more.