Fill gaps in your product catalog with Google Shopping data
Get the title, brand, description, images, rating and specs Google Shopping has for a product, as structured fields you can map into your catalog.
What gets in the way
Supplier feeds arrive with short titles, missing images and no specs. Writing it all by hand is slow, and listings with thin data are harder to find and convert worse.
You need a consistent source of product attributes you can fetch per product and map into your own fields.
How CrawlerData solves it
Search by product name or model number to find the matching Google Shopping product_id.
Google Shopping APIFetch the product: title, brand, description, features, images, rating, reviews, price and a specs object of name/value pairs.
Google Shopping Product APINeed the seller list too? The sellers endpoint returns the same product details plus every seller in one request.
Google Shopping Sellers APIRun large backfills on the regular queue and receive each result by webhook.
Google Shopping Product API
One request, structured data back
specs is an object of name/value pairs as Google shows them. Fields Google does not have are null or empty.
curl -X POST https://api.crawlerdata.com/v1/jobs \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"endpoint":"google-shopping-product-info","params":{"product_id":"14580532573920022357","country":"us"},"queue":"live"}'const res = await fetch('https://api.crawlerdata.com/v1/jobs', {
method: 'POST',
headers: { Authorization: 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' },
body: JSON.stringify({
"endpoint": "google-shopping-product-info",
"params": {
"product_id": "14580532573920022357",
"country": "us"
},
"queue": "live"
}),
});
const { job, result } = await res.json();import requests
res = requests.post(
"https://api.crawlerdata.com/v1/jobs",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={
"endpoint": "google-shopping-product-info",
"params": {
"product_id": "14580532573920022357",
"country": "us",
},
"queue": "live",
},
)
data = res.json(){
"product": {
"product_id": "14580532573920022357",
"title": "Soundplay Foldable Wireless Headphones Bluetooth Over-Ear Headset with Built-in Mic",
"brand": null,
"description": "Listen to music without interruptions with the SoundPlay Foldable Wireless Headphones! With up to 20…",
"images": [
"https://encrypted-tbn1.gstatic.com/shopping?q=tbn:ANd9GcRvBIrZ4-K9mD4Nxa4hlDSuq5dENp9m_-mc11GO6w27Hd…",
"https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcSrv0H7sx_YaHrSomhU-4c_wpU0TNslm5prdfYzxrdbgD…"
],
"rating": 4.3,
"reviews": null,
"specs": {
"Headphone Cup Type": "Over-Ear",
"Noise Cancellation Type": "Active",
"Performance Highlights": "Volume Control",
"Max Battery Life": "20 hours (playback time)"
}
}
}Long values are shortened in this example.
Excerpt of the result object, with fields and items trimmed. Full response on the Google Shopping Product API page.
A worked example
Every endpoint costs 1 credit per request. Here is what a typical one-off workload costs with whole credit packs.
20,000 products × (1 shopping search to match + 1 product request)
= 40,000 requests in total
1 credit per request, so 40,000 credits.
Buy for the whole job (best)
1 × Starter (50,000 credits) for $50.00
$50.00
$0.0013 per request
What you get
10,000 credits left over for re-runs and spot checks. Credits are valid for 6 months.
Larger packs go down to $0.30 per 1,000 requests.
Packs are bought whole, like in the pricing calculator. Credits are valid for 6 months. Failed requests are not charged. Prices exclude sales tax/VAT.
Limits to plan for
- Google Shopping does not have every field for every product. brand, reviews or features can be null or empty, as in the example.
- Matching your products to the right product_id is your step. Check the match (brand, model, specs) before you write data into your catalog.
- Image URLs point to Google-hosted copies. Check the rights to any image or text before you publish it.
- Results reflect what Google Shopping shows at request time for the chosen country and language.
Questions
What is the difference between the product and sellers endpoints?
The product endpoint returns product details only. The sellers endpoint returns product details plus every seller. Both cost 1 credit per request.
Can I get product data in other languages?
Pass a 2-letter language code with a country code. What comes back depends on what Google Shopping shows for that market.
Do I pay for products that are not found?
Failed requests are not charged. A request that completes but returns an empty result is still a successful request and costs 1 credit.
How long are credits valid?
Credits are valid for 6 months from purchase, which is plenty for a one-off backfill.
Related solutions
Competitor price monitoring
Every seller and total price for your products on Google Shopping, one request per product.
See how it works
Market research
Products, sellers, price ranges and ratings for a category or market.
See how it works
APIs used
Google Shopping Product API
Title, brand, description, images, rating and specs for a Google Shopping product.
from $0.30 / 1,000 requests
Google Shopping API
Search Google Shopping and get every product with price, merchant, rating and a product ID you can use to fetch all sellers.
from $0.30 / 1,000 requests
Google Shopping Sellers API
Every seller offering a product, sorted by total price, for one request. No per-seller charges.
from $0.30 / 1,000 requests
Try it on your own data
Get 50 free credits when you sign up with your work email and verify it. Failed requests are never charged.