Whether you’re repricing, watching competitors, or tracking availability, a Google Search API lets you monitor the market at scale and on your own schedule. Here’s the pattern with serp.cheap.
Capture results for a product query
import requests, datetime, json
def snapshot(query, gl="us"):
data = requests.post(
"https://api.serp.cheap/v1/search",
headers={"X-API-Key": "YOUR_KEY"},
json={"q": query, "gl": gl},
timeout=30,
).json()
return {
"date": datetime.date.today().isoformat(),
"query": query,
"results": [
{"title": r["title"], "link": r["link"], "snippet": r.get("snippet", "")}
for r in data["organic"]
],
}
print(json.dumps(snapshot("iphone 16 pro price"), indent=2))
Track over time
Store each snapshot (SQLite, a warehouse, or files). Diff day-over-day to detect new sellers, ranking changes, or snippet text that includes pricing. Add gl to monitor multiple markets.
Keep it cheap at high frequency
- Cache hits are half price — checking the same product repeatedly costs $0.0003 within the cache window.
- Batch by market, not by the hour — daily snapshots catch most movement.
- Track
stats.costto keep a running total.
At 1,000 product queries/day that’s roughly $0.60/day fresh — cheaper than most per-SKU monitoring SaaS.
A note on Shopping data
For raw organic + snippet monitoring, the standard search endpoint is enough and the cheapest path. For deep structured Shopping feeds you may need a specialised endpoint — but most price-watching use cases are well served by organic + snippet text.
Next
Try serp.cheap
Point the snapshot script above at your product queries and start tracking today. 100 free searches on signup — no card required; pay-as-you-go from $0.75/1k after that, and credits stay valid for 12 months.
- Get your free API key →
- Prefer paying by card? serp.cheap is also on RapidAPI (
$0.90/1k) and Apify ($1.50/1k).