Vivino Scraper — Wine Ratings, Prices & Wineries
Pricing
$3.00 / 1,000 wines
Vivino Scraper — Wine Ratings, Prices & Wineries
Scrape Vivino wines by type, country, rating and price: name, vintage, winery, region, grapes, average rating, number of ratings, best price and shop link, taste profile and image. Any Vivino market and currency. No login.
Pricing
$3.00 / 1,000 wines
Rating
0.0
(0)
Developer
Technical Dost Solutions
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Vivino Wine Scraper extracts wines from Vivino, the world's largest wine marketplace and rating community. Filter by wine type, country of origin, minimum rating and price range, choose your market and currency, and get each wine's name, vintage, winery, region, country, style, grapes, average rating, number of ratings, best available price with shop link, taste profile (acidity, sweetness, tannin, intensity) and label image. Ideal for wine retailers, importers, price comparison and wine apps.
What you get
- Filters: red, white, sparkling, rosé, dessert and fortified wines; countries of origin; minimum rating; price range.
- Any Vivino market and currency (US/USD, GB/GBP, DE/EUR, FR/EUR, AU/AUD...).
- Ratings you can trust: average rating and number of ratings for every wine.
- Best available price, bottle size, discount and the shop link from Vivino's marketplace.
- Taste profile (acidity, sweetness, tannin, intensity, fizziness), style and grapes.
- Sort by most rated, top rated, price or discount; up to 10,000 wines per run.
How to use Vivino Wine Scraper
- Choose Wine types, Countries of origin and a Minimum rating.
- Optionally set a Price range, your Market and Currency.
- Pick Sort by and Maximum wines.
- Run the Actor and export to Excel, CSV or JSON, or connect it to your app through the API.
Input example
{"wineTypes": ["red"],"minRating": 4,"priceMin": 10,"priceMax": 40,"maxItems": 50}
All fields are described in the Input tab.
Output example
{"wineId": 15238,"vintageId": 182459221,"name": "Belle Glos Clark & Telephone Vineyard Pinot Noir 2025","wine": "Clark & Telephone Vineyard Pinot Noir","year": 2025,"winery": "Belle Glos","type": "red","style": "Californian Santa Maria Valley Pinot Noir Red","grapes": ["Pinot Noir"],"region": "Santa Maria Valley","country": "United States","rating": 4.4,"ratingsCount": 58337,"price": 31.95,"currency": "USD","bottleSize": "Bottle (0.75l)","discountPercent": null,"shopUrl": "https://www.capitalfinewine.com/products/belle-glos-pinot-noir-clark-tel-coast-stan-2025-750ml","acidity": 3.38,"sweetness": 1.88,"tannin": 2.04,"intensity": 3.3,"fizziness": null,"isNatural": false,"imageUrl": "https://images.vivino.com/thumbs/90WvGviRRGyS_stN6b8sTw_pl_480x640.png","url": "https://www.vivino.com/w/15238?year=2025","market": "US","scrapedAt": "2026-10-22T23:10:59.062Z"}
Output fields
| Field | Description |
|---|---|
wineId | Vivino wine ID. |
vintageId | Vivino vintage ID. |
name | Full wine name with vintage. |
wine | Wine name without winery. |
year | Vintage year (empty for non-vintage). |
winery | Winery. |
type | red, white, sparkling, rose, dessert or fortified. |
style | Wine style. |
grapes | Grape varieties. |
region | Region. |
country | Country of origin. |
rating | Average Vivino rating (1-5). |
ratingsCount | Number of ratings. |
price | Best available price. |
currency | Price currency. |
bottleSize | Bottle size of the offer. |
discountPercent | Discount on the offer, when any. |
shopUrl | Link to the shop offer. |
acidity | Taste: acidity (1-5). |
sweetness | Taste: sweetness (1-5). |
tannin | Taste: tannin (1-5). |
intensity | Taste: intensity (1-5). |
fizziness | Taste: fizziness (1-5), sparkling wines. |
isNatural | Natural wine. |
imageUrl | Label image. |
url | Vivino wine page. |
market | Market used for prices. |
scrapedAt | Time of extraction. |
Export results as JSON, CSV, Excel, XML or HTML, or read them with the API.
Use cases
- Wine shops and importers: find highly rated wines in a price band to stock.
- Price comparison and deal alerts: track Vivino prices and discounts over time.
- Wine apps and AI sommeliers: build a catalogue with ratings, grapes and taste profiles.
- Market research: compare regions, grapes and price points by rating.
How much does Vivino Wine Scraper cost?
This Actor uses pay-per-event pricing: $0.003 per wine ($3 per 1,000). Platform usage is included. Searches with no matching wines are free.
Set Maximum cost per run in the run options to cap your spend; the Actor stops when the limit is reached.
Use Vivino Wine Scraper with AI agents (MCP)
Give Claude, ChatGPT, Cursor or any MCP client this Actor as a tool through the hosted Apify MCP server:
$claude mcp add --transport http apify "https://mcp.apify.com/?tools=technicaldost/vivino-wine-scraper-ratings-prices" --header "Authorization: Bearer YOUR_APIFY_TOKEN"
Or in a JSON MCP config:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com/?tools=technicaldost/vivino-wine-scraper-ratings-prices","headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }}}}
The tool is named technicaldost--vivino-wine-scraper-ratings-prices. Ask your agent, for example, to "run Vivino Wine Scraper with {"wineTypes": ["red"], "minRating": 4, "priceMin": 10, "priceMax": 40, "maxItems": 50}".
Run Vivino Wine Scraper via API
curl -X POST "https://api.apify.com/v2/acts/technicaldost~vivino-wine-scraper-ratings-prices/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"wineTypes": ["red"], "minRating": 4, "priceMin": 10, "priceMax": 40, "maxItems": 50}'
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("technicaldost/vivino-wine-scraper-ratings-prices").call(run_input={"wineTypes": ["red"], "minRating": 4, "priceMin": 10, "priceMax": 40, "maxItems": 50})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('technicaldost/vivino-wine-scraper-ratings-prices').call({"wineTypes": ["red"], "minRating": 4, "priceMin": 10, "priceMax": 40, "maxItems": 50});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Integrations
Schedule runs (daily, hourly) in Apify Console and send results to Google Sheets, Slack, Make, Zapier, n8n, Airbyte or your own webhook.
FAQ
Which countries can I filter by?
Use two-letter country codes for the country of origin, for example FR, IT, ES, US, AR, CL, AU, NZ, PT, DE, ZA.
Why do prices differ by market?
Vivino shows offers from shops that deliver to your market. Set Market and Currency to the country you buy in, for example GB and GBP.
How many wines can I get?
Up to 10,000 per run. Vivino returns up to 50 wines per page and reports how many wines match your filters; the number is in the run log.
Does it include reviews?
This version returns ratings and rating counts, not individual review texts.
Is it legal to scrape this data?
The Actor collects publicly available information only and does not log in or bypass access controls. Use the data in line with the website's terms and the laws that apply to you, especially when processing personal data.