Vivino Scraper: Wine Prices, Ratings and Price Monitor
Pricing
from $2.00 / 1,000 wines
Vivino Scraper: Wine Prices, Ratings and Price Monitor
Scrape Vivino wines by wine type, grape, origin country, price range and minimum rating. Get ratings, market prices, offer counts, taste profile and food pairings per wine, and track price changes between runs. Plain HTTP, fast and low cost.
Pricing
from $2.00 / 1,000 wines
Rating
0.0
(0)
Developer
Kamer Ozkan
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Vivino scraper for wine prices and ratings: find wines on Vivino by wine type, grape, origin country, price range and minimum rating, and get the Vivino rating, ratings count, market price, taste profile and food pairings of every wine. Schedule it to monitor wine price changes between runs.
What does Vivino Scraper do?
It runs the same search as the Vivino Explore page, with the filters you choose, and returns one clean row per wine vintage: name, winery, year, wine type, country, region, style, grapes, Vivino rating and ratings count (for the vintage and for the wine across all vintages), the current market price with currency and bottle size, the number of shop offers, the taste structure (acidity, intensity, sweetness, tannin), top flavor notes, food pairings, bottle image and Vivino link.
Prices on Vivino depend on the country you shop from. Pick a Market (US, GB, DE, FR, IT, NL, DK, CH, CA, AU and more) and the actor reads Vivino from that country, so you get the shop prices a buyer there sees, in the market currency.
With Track price changes between runs on (the default), the actor remembers the price of every wine for your filters. Schedule the same input every day or week and each row tells you the previous price, the price change and the change in percent, and marks wines that are new in the results. Turn on Only output wines whose price changed or that are new to pay only for the changes.
No login, no Vivino account and no API key are needed. Proxy is included in the price.
Who is it for?
- Wine importers and distributors scanning a region or grape for highly rated wines in a price band before choosing what to import.
- Wine shops and online retailers checking market prices and ratings of the wines they stock, and watching competitors' price moves.
- Sommeliers and wine buyers building lists of the best rated wines per grape, country and budget.
- Price comparison and wine app builders who need Vivino ratings and market prices as structured data.
- Analysts studying rating and price distributions per region, style and vintage.
What data can you get?
| Field | Example |
|---|---|
name | Schrader Cabernet Sauvignon CCS Beckstoffer To Kalon Vineyard 2009 |
wine, year, winery | Cabernet Sauvignon CCS Beckstoffer To Kalon Vineyard, 2009, Schrader |
wineType | red, white, sparkling, rose, dessert or fortified |
country, countryCode, region | United States, us, Oakville |
style, grapes | Napa Valley Cabernet Sauvignon, ["Cabernet Sauvignon"] |
rating, ratingsCount | 4.9, 82 (this vintage) |
wineRating, wineRatingsCount | 4.7, 1239 (the wine across all vintages) |
price, currency | 1819, USD |
bottleSize, bottleVolumeMl | Bottle (0.75l), 750 |
offersCount | Number of shop offers Vivino lists |
discountedFrom, discountPercent | Filled when a shop runs a discount |
body, acidity, intensity, sweetness, tannin | Very full-bodied, 3.33, 4.53, 1.83, 3.2 |
flavors | ["blackberry", "cassis", "oak", "vanilla", ...] |
foodPairings | ["Beef", "Lamb", "Game (deer, venison)"] |
market | us (the country whose shop prices you see) |
previousPrice, priceChange, priceChangePercent, isNew | 1819, 0, 0, false |
vintageId, wineId, url, imageUrl | Vivino ids, wine page link and bottle image |
checkedAt | 2026-10-17T20:56:24+00:00 |
How much does it cost?
You pay only for wines: $2.50 per 1,000 wines on the Free plan, with lower prices on paid Apify plans. There is no extra charge per search page, per filter or for the proxy.
Worked example: a wine shop monitors 300 wines (French and Italian reds rated 4.0+ between $20 and $60) once a week. That is 300 x 4 = 1,200 wines a month, about $3.00 per month. With Only output wines whose price changed or that are new on, unchanged wines are skipped and not charged.
Set "Max wines" or a maximum cost per run to cap spending.
How to use it
- Click Try for free.
- Pick the Market whose shop prices you want (for example US or GB).
- Choose wine types, grapes (Vivino names such as "Cabernet Sauvignon", "Pinot Noir", "Chardonnay") and origin countries, or leave them empty for all.
- Set a price range and a minimum Vivino rating, and how to sort.
- Click Start, then download the results as JSON, CSV or Excel, or read them with the API.
- To monitor prices, save the input as a task and add a schedule. Keep the same filters, because prices are compared per exact filter set.
Input example
{"market": "GB","wineTypes": ["white", "sparkling"],"grapes": ["Chardonnay"],"originCountries": ["fr"],"priceMin": 20,"priceMax": 60,"minRating": "4","sortBy": "price","maxItems": 60,"trackPriceChanges": true}
Output example
Real row from a run on 2026-10-17 (second run of the same filters, so the price change fields are filled):
{"vintageId": 18745256,"wineId": 3151741,"name": "Schrader Cabernet Sauvignon CCS Beckstoffer To Kalon Vineyard 2009","wine": "Cabernet Sauvignon CCS Beckstoffer To Kalon Vineyard","year": 2009,"winery": "Schrader","wineType": "red","country": "United States","countryCode": "us","region": "Oakville","style": "Napa Valley Cabernet Sauvignon","grapes": ["Cabernet Sauvignon"],"rating": 4.9,"ratingsCount": 82,"wineRating": 4.7,"wineRatingsCount": 1239,"price": 1819,"currency": "USD","discountedFrom": null,"discountPercent": null,"bottleSize": "Bottle (0.75l)","bottleVolumeMl": 750,"offersCount": 1,"body": "Very full-bodied","acidity": 3.33,"intensity": 4.53,"sweetness": 1.83,"tannin": 3.2,"flavors": ["blackberry", "cassis", "blueberry", "oak", "vanilla", "chocolate"],"foodPairings": ["Beef", "Lamb", "Game (deer, venison)", "Mature and hard cheese", "Poultry"],"isNatural": false,"imageUrl": "https://images.vivino.com/thumbs/_jt3dPPrSZKfVmV6J8YlLg_pb_x600.png","url": "https://www.vivino.com/w/3151741?year=2009","market": "us","previousPrice": 1819,"priceChange": 0,"priceChangePercent": 0,"isNew": false,"checkedAt": "2026-10-17T20:56:24+00:00"}
The OUTPUT record of the run shows the market used, how many wines matched the filters on Vivino and the filters themselves.
Integrations and API
Run it from your code with the Apify API or the apify-client package, schedule it in Apify, or connect it to Make, n8n, Zapier, Google Sheets or a webhook (for example a Slack message when priceChangePercent drops below -10).
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("kamerozkan/vivino-scraper").call(run_input={"market": "US","wineTypes": ["red"],"grapes": ["Pinot Noir"],"originCountries": ["fr", "us"],"priceMin": 20,"priceMax": 80,"minRating": "4","maxItems": 200,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["name"], item["rating"], item["price"], item["currency"], item["priceChange"])
FAQ
Which price do I get? The price Vivino shows a buyer in the chosen market: the cheapest listed shop offer for a standard bottle, in the market currency. offersCount tells you how many offers Vivino lists.
Why do the results differ from vivino.com in my browser? Vivino shows prices and availability per country. Make sure the Market matches the country you compare with.
How many wines can I get? Up to the number of wines that match your filters on Vivino (shown in the OUTPUT record). Narrow the filters or raise "Max wines" as needed.
How does it know the previous price? It stores the last prices for your exact filters in a key-value store in your own Apify account. Change the filters and it starts a new history.
Can I look up specific wines by name or URL? Not yet: this version discovers wines through filters. Open an issue if you need name or URL lookup and it will be added.
Is it legal to collect this data? It collects public wine listing data only: wine names, wineries (businesses), ratings and prices. No user reviews or personal data. You are responsible for how you use it.
Support and feedback
- Found a bug or missing a field? Open an issue on the Issues tab of this Actor with your run link. We reply within 48 hours and ship most fixes within a few days.
- Have an idea for a feature? Issues are the fastest way to get it built.
- If the Actor saves you time, a short review on this page helps other users find it.