Google SERP API
for structured results in seconds
Get real-time Google SERP data as clean JSON. One request in, structured results out. No parsing, no maintenance, no headaches.
of requests succeed
median response
95% finish faster
per 1k SERPs at volume
Google reshuffles the page. Your code shouldn't care.
- Rotating proxies & residential IPs
- Rate limits and retries
- A headless fleet to keep warm
- A parser per SERP feature
- Fix the parsers again next week
One GET Request. That's the whole integration.
Start with just a query. Add more parameters when your use case needs them.
curl -G 'https://api.hasdata.com/scrape/google/serp' \
--data-urlencode 'q=Coffee' \
--data-urlencode 'location=Austin,Texas,United States' \
--data-urlencode 'deviceType=desktop' \
--header 'x-api-key: <YOUR_API_KEY>' \
--header 'Content-Type: application/json'q * Search Querylocation Locationuule Encoded Locationdomain Domaingl Countryhl Languagelr Set Multiple Languagestbs Advanced Search Parameterssafe Adult Content Filteringfilter Results Filteringnfpr Auto-corrected Resultsstart Result Offsetnum Number of Resultstbm Search TypedeviceType Deviceludocid Google Place IDlsig Additional Google Place IDkgmid Google Knowledge Graph IDsi Google Cached Search Parameters IDGet Google SERP data without code
Prefer no code? Get the same SERP data from a visual scraper. No API, no setup, just a query and a location.
Google SERP ScraperEvery SERP feature, one predictable schema
The same keys come back on every request. Map the fields once and forget about it.
[
{
"position": 1,
"title": "Starbucks",
"link": "https://en.wikipedia.org/wiki/Starbucks",
"displayedLink": "https://en.wikipedia.org › wiki › Starbucks",
"source": "Wikipedia",
"snippet": "Starbucks Corporation is an American multinational chain of coffeehouses and roastery reserves headquartered in Seattle, Washington. It was founded in 1971",
"snippetHighlitedWords": [
"an American multinational chain of coffeehouses and roastery reserves"
]
}
]position numberRank on the page
title stringResult title
link stringDestination URL
displayedLink stringBreadcrumb-style shown URL
source stringSite / brand name
snippet stringDescription text
snippetHighlitedWords string[]Terms Google bolded
[
{
"position": 1,
"blockPosition": "top",
"title": "Walmart® Official Site",
"link": "https://www.walmart.com/",
"displayedLink": "https://www.walmart.com/",
"trackingLink": "https://www.google.com/aclk?sa=l&ai=DChcSEw...",
"description": "Groceries, essentials & more delivered in as fast as an hour. Try Express Delivery!"
}
]position numberRank within its ad block
blockPosition stringtop | bottom
title stringAd headline
link stringLanding URL
displayedLink stringShown URL
trackingLink stringGoogle click-tracking URL
description stringAd copy
{
"textBlocks": [
{
"type": "paragraph",
"snippet": "Lowering cholesterol requires a combination of heart-healthy dietary changes, regular physical activity, and targeted lifestyle habits."
},
{
"type": "list",
"list": [
{
"snippet": "Replace saturated fats with unsaturated fats"
}
]
}
],
"references": [
{
"index": 0,
"title": "How to Lower Cholesterol: MedlinePlus",
"link": "https://medlineplus.gov/howtolowercholesterol.html",
"source": "MedlinePlus (.gov)"
}
]
}textBlocks object[]Ordered content blocks
textBlocks[].type stringBlock kind: paragraph | list | table
textBlocks[].snippet stringBlock text
references object[]Cited sources backing the overview
references[].title stringCited source title
references[].link stringCited source URL
references[].source stringPublisher
{
"title": "Starbucks",
"entityType": "shopping_merchant",
"kgmid": "/m/018c_r",
"founded": "March 30, 1971, Pike Place Market, Seattle, WA",
"ceo": "Brian Niccol (Sep 9, 2024-)",
"founders": "Jerry Baldwin, Zev Siegl, Gordon Bowker",
"customerService": "1 (800) 782-7282"
}title stringEntity name
entityType stringCategory (company, person, place, ...)
kgmid stringGoogle Knowledge Graph ID
founded stringFounding date / place
ceo stringChief executive
founders stringFounders (comma-separated)
customerService stringSupport phone
[
{
"position": 1,
"title": "CookUnity - 8 Chef Meals - Protein-Packed",
"link": "https://www.cookunity.com/lp/ref_shopping_highprotein_8mealplan",
"source": "CookUnity",
"price": "$46.76/wk",
"extractedPrice": 46.76,
"thumbnail": "https://files.hasdata.com/57b5cd4b-c21d-4a87-be43-1dbd57d44914.png"
}
]position numberRank within the shopping block
title stringProduct name
link stringProduct / merchant URL
source stringMerchant
price stringFormatted price, e.g. $49.99
extractedPrice numberNumeric price for sorting
thumbnail stringProduct image URL
[
{
"question": "What is the secret to a good apple pie?",
"title": "The Food Lab's Top 9 Tips For Perfect Apple Pie - Serious Eats",
"link": "https://www.seriouseats.com/food-lab-top-nine-tips-for-perfect-apple-pie",
"displayedLink": "https://www.seriouseats.com › food-lab-top-nine-tips-for...",
"list": [
"Keep Your Ingredients Cold.",
"Stick With an All-Butter Crust.",
"Make a Butter-Flour Paste."
]
},
{
"question": "What is the best thickener for apple pie filling?",
"title": "Apple Pie Filling Recipe - Preppy Kitchen",
"link": "https://preppykitchen.com/apple-pie-filling/",
"displayedLink": "https://preppykitchen.com › apple-pie-filling",
"snippet": "A cornstarch slurry made of cornstarch and water is the best thickener for apple pie filling. It thickens quickly and stays smooth and glossy."
},
{
"question": "Should you cook apples before putting them in a pie?",
"aiOverview": {
"textBlocks": [
{
"type": "paragraph",
"snippet": "Yes, precooking apples before adding them to a pie filling is generally recommended."
}
]
}
}
]question stringThe People-also-ask question
title stringSource page title
link stringSource URL
displayedLink stringBreadcrumb-style shown URL
snippet stringText answer (one answer variant)
list string[]List-style answer (one variant)
aiOverview objectAI-generated answer (one variant)
date stringSource date (optional)
{
"places": [
{
"position": 1,
"title": "Starbucks Coffee Company",
"phone": "(312) 750-1454",
"address": "Chicago, IL",
"hours": "Open · Closes 9 PM",
"description": "Dine-in·Takeout·No delivery"
}
],
"moreLocationsLink": "https://www.google.com/search?q=starbucks&sca_esv=a45e3a50e3e1080f&hl=en&gl=us&udm=1&lsack=G8VgavnHKeDumLQPqJmtyQM&sa=X&ved=2ahUKEwi5wYa9seaVAxVgN4YAHahMKzkQjGp6BAhBEAE"
}places object[]Local pack entries
places[].title stringBusiness name
places[].phone stringPhone number
places[].address stringStreet address
places[].hours stringOpening hours (human-readable)
places[].description stringCategory / blurb
moreLocationsLink stringLink to full map results
{
"type": "organicResult",
"title": "Understanding Core Web Vitals and Google search results",
"link": "https://developers.google.com/search/docs/appearance/core-web-vitals",
"snippet": "Core Web Vitals is a set of metrics that measure real-world user experience for loading performance, interactivity, and visual stability of the page.",
"snippetHighlitedWords": [
"a set of metrics that measure real-world user experience"
],
"source": "Google for Developers"
}type stringVariant: organicResult, calculator, weather, ...
title stringHeadline
link stringSource URL
snippet stringAnswer text
snippetHighlitedWords string[]Emphasized answer span
source stringSource name
[
{
"title": "Dedicated Server Hosting options?",
"link": "https://www.reddit.com/r/Hosting/comments/1krngda/dedicated_server_hosting_options/",
"source": "Reddit",
"date": "1 year ago",
"extensions": [
"r/Hosting",
"50+ comments"
],
"replies": [
{
"title": "Avoid cheap, mass-market dedicated hosting providers. Instead, search …",
"link": "https://www.reddit.com/r/Hosting/comments/1krngda/dedicated_server_hosting_options/nji2cwr/",
"extensions": [
"Top answer",
"2 votes",
"9 months ago"
]
}
]
}
]title stringThread title
link stringThread URL
source stringForum / site (Reddit, Stack Overflow, …)
date stringPosted date
extensions string[]Tags and the reply count, e.g. "50+ comments"
replies object[]Top replies, each with title, link and extensions
An all-in-one scraping service
Every feature you need to collect Google search results data from thousands to millions of requests.
Fits right into your stack.
Works with the tools you already use.
View Documentation ->Discover similar
scrapers and APIs
to expand your projects.
Google AI Mode API
Generative AI Answers • $1.12 / 1k Request
Bing Search API
Bing SERP Results • $0.75 / 1k Request
Teams that deleted their scraper
Now it's the part of the pipeline they don't think about
HasData delivers exactly what we need: speed and comprehensive search features. It's the fastest API we've used in this space. Plus, their customer support is fantastic.
The SERP API provides accurate, structured search engine data across multiple regions and devices, enabling us to monitor market trends and performance with ease.
We use the Google SERP API by HasData for its AI-overview feature. It delivers real-time data with consistent reliability. The JSON output includes an actual SERP screenshot, ensuring full accuracy.
We rely on HasData for search performance data and broader scraping needs. Their APIs deliver highly structured data that integrates directly into our platforms.
We are using this service for google scraping and it works well. We used to use several services, but this looks like best match efficiency/cost.
Plans that get cheaper at scale
Fixed price, fixed volume, no surprises at the end of the month. Upgrade when you need more.
Free
Startup
Business
RecommendedGrowth
Monthly SERP volume
Custom price based on required volume
Past 100M scrapes a month, or terms the self-serve plans do not cover. We shape the contract around your workload. Past 100M scrapes a month, or need terms the self-serve plans do not cover? We shape the contract, concurrency, and support around your workload.
HasData accesses publicly available data only. Google's terms may restrict automated access; you are responsible for compliance. Where data includes personal information, ensure a lawful basis under GDPR/CCPA.
Questions, answered
Per successful request. A failed request costs nothing. One request returns one full SERP, no matter how many results it contains.
Yes, a one-time trial of 100 SERPs with every result type included. No credit card required. When you're done testing, pick a plan that fits your volume.
Paid plans start at $49 per month for 20,000 SERPs and scale to 10 million SERPs a month. The unit price drops with volume, from $2.45 down to $0.747 per 1,000 SERPs.
SERP Light is the same endpoint stripped down to the essential blocks, without AI Overviews and other rich results. It responds faster and costs 5 credits per request instead of 10. Pick it when organic results are all you need.
Organic results, ads, AI Overviews, local pack, People Also Ask, shopping, knowledge graph, related searches and more. 15+ result types, each under its own key in the response. Every plan includes all of them.
Google's Custom Search JSON API searches a custom engine you configure, caps you at 10,000 queries per day, and doesn't return SERP features like AI Overviews or the local pack. HasData returns the live Google results page as structured JSON, with city-level geo-targeting and no daily cap.
Yes. Set location for city-level targeting, gl for the country, hl for the interface language, and deviceType for desktop, mobile or tablet. Results match what a local user sees.
Nothing on your side. We track Google's markup and keep the response schema stable. Fields keep their names and types, and existing keys don't disappear. Your integration keeps working.
No. Requests run on HasData's infrastructure, so there's nothing to provision or maintain. You're responsible for using the results in line with each target site's terms and applicable law.
Yes, you can cancel your subscription at any time from your dashboard in a few seconds. Once cancelled, there are no recurring payments.
Your first Google SERP
is minutes away
100 SERPs free · no credit card