SYSTEM all green source vivino.com queue 12,948 pages p99 latency 185ms dataflirt.com · scraper/vivino-com
RUN · 84 active pipelines · vivino.com live

Vivino data,
at warehouse scale.

We extract wine profiles, vintage variations, merchant pricing, flavour characteristics, and global review corpora from Vivino. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.

Wines extracted
3.2M /month
Price updates
845K /24h
Review records
1.4M /run
Active pipelines
84
Uptime
99.98%
Data Dictionary

Every field we extract from vivino.com

Structured, schema-consistent data across all major object types — delivered clean, typed, and ready to query.

Complete list of extractable fields for Wine Profiles objects from vivino.com. All fields typed and schema-versioned.

wine_idnamewineryvintageregioncountrywine_stylegrape_varietyvivino_ratingrating_countimage_urldescriptionalcohol_contentpage_url
wine_profiles
● 200 OK
"wine_id": "1127394",
"name": "Opus One",
"winery": "Opus One",
"vintage": "2018",
"region": "Napa Valley",
"country": "United States",
"vivino_rating": 4.8,
"rating_count": 14205,
"wine_style": "Napa Valley Bordeaux Blend"
# wine_idnamewineryvintageregioncountry
1
2
3

Complete list of extractable fields for Merchant Pricing objects from vivino.com. All fields typed and schema-versioned.

wine_idvintagemerchant_namemerchant_idpricecurrencybottle_sizeavailabilityshipping_costdelivery_timesponsor_statusscraped_at
merchant_pricing
● 200 OK
"wine_id": "1127394",
"merchant_name": "Total Wine & More",
"price": 385.0,
"currency": "USD",
"bottle_size": "750ml",
"availability": "In Stock",
"shipping_cost": 15.0,
"scraped_at": "2026-05-12T10:15:22Z"
# wine_idvintagemerchant_namemerchant_idpricecurrency
1
2
3

Complete list of extractable fields for Flavour Profiles objects from vivino.com. All fields typed and schema-versioned.

wine_idlight_boldsmooth_tannicdry_sweetsoft_acidicprimary_notessecondary_notesoak_presenceearthy_notesfruit_profilereviewer_consensus
flavour_profiles
● 200 OK
"wine_id": "1127394",
"light_bold": 85,
"smooth_tannic": 72,
"dry_sweet": 15,
"soft_acidic": 60,
"primary_notes": "['Blackberry', 'Cassis', 'Plum']",
"oak_presence": "High",
"earthy_notes": "['Leather', 'Tobacco']"
# wine_idlight_boldsmooth_tannicdry_sweetsoft_acidicprimary_notes
1
2
3

Complete list of extractable fields for Reviews & Ratings objects from vivino.com. All fields typed and schema-versioned.

review_idwine_idvintageuser_iduser_ratingreview_textlanguagereview_datelikes_countcomments_count
reviews_& ratings
● 200 OK
"review_id": "84729105",
"wine_id": "1127394",
"user_rating": 5.0,
"review_text": "Exceptional balance of dark fruit and structured tannins.",
"language": "en",
"review_date": "2026-04-20",
"likes_count": 34,
"vintage": "2018"
# review_idwine_idvintageuser_iduser_ratingreview_text
1
2
3

Complete list of extractable fields for Winery Data objects from vivino.com. All fields typed and schema-versioned.

winery_idnameregioncountrytotal_winesaverage_ratingglobal_rankregional_rankwebsitedescriptionestablished_year
winery_data
● 200 OK
"winery_id": "8392",
"name": "Opus One",
"region": "Napa Valley",
"country": "United States",
"total_wines": 14,
"average_rating": 4.7,
"global_rank": 12,
"regional_rank": 2
# winery_idnameregioncountrytotal_winesaverage_rating
1
2
3

Capabilities

Everything you need from Vivino — nothing you don't

Our Vivino scraper handles every layer of the platform: wine profiles, dynamic merchant pricing, flavour characteristics, and the review corpus — with JavaScript rendering, session management, and anti-bot circumvention built in.

Full Wine Profile Extraction

Name, winery, vintage, region, grape variety, Vivino rating, and image URLs — scraped at the individual wine level.

Global Merchant Pricing

Capture merchant prices, shipping costs, availability, and bottle sizes across different shipping destinations — timestamped per crawl.

Flavour Characteristic Mapping

Extract Taste Characteristics including the bold-light slider values, tannin levels, acidity, and primary tasting notes.

Review & Sentiment Mining

Full review text, star ratings, user IDs, language, and review dates — paginated across all user reviews.

Winery & Regional Intelligence

Winery aggregate ratings, total wine counts, regional rankings, and global standing data.

Food Pairing Data

Extract recommended food pairings for specific wine styles and regions directly from the Vivino database.

Vintage Variation Tracking

Compare ratings, pricing, and tasting notes across different vintages of the exact same wine.

Multi-Region Localisation

Extract pricing and availability data relative to specific user shipping countries and currencies.

Scheduled + Streaming Modes

Run one-off bulk exports or configure continuous pipelines at hourly, daily, or real-time cadences with change-detection diffing.

// engagement pipeline

From wine list to warehouse record

Brief in. Clean data out.

Define Scope
d 0

Provide wine URLs, winery names, regional parameters, or search terms. We design the extraction schema together.

Pipeline Build
d 2–4

We configure Scrapy / Playwright crawlers, proxy rotation, session management, and CAPTCHA handling for vivino.com.

Validation & QA
d 4–6

Schema validation, null-rate checks, price-outlier detection, and sample reviews before full launch.

Delivery
ongoing

JSON / CSV / Parquet pushed to your S3 bucket, BigQuery dataset, or Snowflake stage on agreed cadence.

Under the hood

How our Vivino pipeline handles the hard parts

Vivino employs strict rate limiting and bot mitigation. Here's how we stay resilient — and why teams choose managed infrastructure over DIY.

pipeline-monitor · vivino.com · live ● active
// fingerprinting
Identity rotation
TLS fingerprintrandomised
User-agentrotated
IP poolresidential
Challenges blocked0
// pagination
Page coverage
48,291 pages queued running
// observability
Pipeline health
99.9%
uptime
142ms
p99 lat
0.3%
null rate
2
alerts
Anti-bot layer
Residential proxy rotation + fingerprint spoofing

Vivino's bot detection operates on TLS fingerprints, browser headers, and IP reputation. Our crawlers use residential ISP proxies with realistic browser fingerprints and full cookie session management — trained on real user behaviour patterns.

JavaScript rendering
Full Playwright execution for React hydration

Vivino relies heavily on React for dynamic content loading, especially for pricing widgets and paginated reviews. We run full Playwright browser sessions with JavaScript execution to capture data that headless HTTP clients miss entirely.

Schema stability
Resilient selectors with fallback chains

Vivino changes its DOM structure frequently. Our selector strategy uses multiple fallback chains per field — CSS selectors, XPath, and JSON state extraction — so a layout change doesn't break your data pipeline overnight.

Change detection
Only re-scrape what's changed

For large wine catalogues, we maintain a hash index of last-seen values per field. Subsequent runs only push diffs — reducing compute cost, storage bloat, and downstream processing load. You get a clean changelog rather than full re-dumps.

Monitoring & alerting
24/7 pipeline health with anomaly detection

Every run emits structured logs to our observability stack. We alert on null-rate spikes, price outliers, schema drift, and coverage drops — and respond before you notice. SLA uptime is contractual, not aspirational.

Applications

Who uses Vivino data — and how

Teams across industries use vivino.com data to build competitive products and smarter operations.

01
Retail Price Monitoring

Wine merchants and distributors monitor global pricing, shipping costs, and availability to optimise their own pricing strategies.

02
Inventory Procurement

Importers track trending regions, rising ratings, and vintage variations to identify high-value procurement opportunities.

03
AI Sommelier Training

ML teams use Vivino's structured Taste Characteristics and food pairing datasets to train recommendation engines and NLP classifiers.

04
Market Research & Category Analysis

Analysts track regional popularity shifts, grape variety trends, and consumer sentiment across different demographics.

05
Brand Monitoring

Wineries audit their own vintages, track consumer sentiment in reviews, and monitor how merchants are pricing their allocations.

06
Restaurant Menu Optimisation

Sommeliers and hospitality groups curate wine lists based on global ratings, stylistic trends, and optimal price-to-quality ratios.

Why DataFlirt

"Vivino holds the world's most comprehensive index of wine flavour profiles and consumer sentiment — but extracting it requires navigating aggressive bot mitigation."

Most teams underestimate the investment required: reliable Vivino scraping requires residential proxies, full JavaScript rendering for React hydration, CAPTCHA handling, and anomaly monitoring. DataFlirt absorbs that complexity so your engineers can focus on the analysis — not the infrastructure.

Technical Spec

Vivino scraper — technical capabilities

Everything supported by our vivino.com scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.

JavaScript rendering
Full Playwright sessions — required for pricing widgets, reviews, and dynamic content
Supported
CAPTCHA bypass
Automated 2Captcha + CapSolver integration with fallback to manual queue
Supported
Residential proxy rotation
ISP-grade residential IPs from EU / US pools — rotated per request
Supported
Flavour profile extraction
Captures Taste Characteristics sliders (light-bold, dry-sweet, etc.) and notes
Supported
Merchant pricing
Extracts dynamic merchant pricing based on specific shipping destination parameters
Supported
Review pagination
Full review corpus including all pages, not just the top visible reviews
Supported
Change detection (diffs)
Hash-based diff: only emit records with changed fields since last run
Supported
Personal Taste Match scores
Requires authenticated user sessions to calculate individual match percentages
Partial
Private cellar inventory
User-specific inventory and consumption history is gated behind authentication
Partial
Infrastructure

Infrastructure powering the Vivino pipeline

Open-source tooling on proven cloud infra — no vendor lock-in, full observability.

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheus
Scrapy + Playwright Stack

Scrapy handles crawl orchestration, deduplication, and retry logic. Playwright handles JavaScript rendering, cookie sessions, and interaction flows. Combined via scrapy-playwright middleware.

Residential Proxy Infrastructure

We maintain pools of residential ISP proxies across EU/US regions. Rotation happens per-request with sticky sessions where required. IP score monitoring prevents blacklisted pool contamination.

Cloud-Native Orchestration

Pipelines run on AWS Lambda (burst) and ECS (sustained). Airflow handles scheduling, dependency management, and SLA alerting. All state stored in managed Postgres.

Output & Delivery

Your data, your destination

Data delivered to where your team already works — no new tooling required.

JSON
Newline-delimited or nested — schema versioned per run
CSV
Flat file with typed columns — Excel/Sheets compatible
XLS
Excel format for business analysts and procurement teams
Parquet
Columnar format for BigQuery, Snowflake, Athena
AWS S3
Direct bucket delivery — compatible with any data lake
Webhook
HTTP POST per record for real-time downstream processing
API
REST endpoints to query your extracted dataset on demand
BigQuery
Streamed directly into your dataset with schema auto-detect
S3
Direct bucket delivery — compatible with any data lake
// faq

Common questions.

About vivino.com scraping, legality, and pipeline operations.

Ask us directly →
Is scraping Vivino legal?

Scraping publicly available information from Vivino is generally permissible under applicable law. DataFlirt targets only public, non-authenticated wine, pricing, and review data. We do not extract personal data, circumvent authentication walls, or violate GDPR. Clients should review Vivino's ToS and consult legal counsel for specific use cases.

How do you handle Vivino's bot protection?

We use residential ISP proxies, full Playwright browser sessions with realistic fingerprints, and request timing modelled on human behaviour. Our selectors have multi-layer fallback chains so DOM changes don't break the pipeline. We monitor for 403/CAPTCHA rate spikes in real time and trigger pool rotation or solver queues automatically.

Do you extract merchant pricing globally?

Yes. We configure the crawlers to simulate requests from specific geographical regions, allowing us to capture localised merchant pricing, shipping costs, and availability for targeted markets.

How fresh is the pricing data?

Real-time streaming pipelines achieve sub-60-minute latency for price and availability signals on a defined wine set. Full catalogue refreshes at daily cadence complete within a 6-12 hour window depending on size.

Can you get historical vintage data?

We extract all currently listed vintages and their associated ratings. For historical price tracking, we maintain a time-series table per wine from the date your pipeline starts.

What is the minimum viable engagement?

Our smallest packages start at a defined list (typically 1,000-50,000 wines) with weekly delivery. For larger catalogues or custom schema requirements, we price based on volume and delivery frequency.

Do you support review scraping?

Yes — including full pagination across all user reviews. Each review record includes the star rating, review text, user ID, language, likes count, and review date.

Can I request a sample dataset before committing?

Absolutely. We provide a sample run of up to 500 wines or 50 search result pages as part of the pre-engagement scoping process — so you can validate schema fit, field completeness, and data quality before signing any contract.

$ dataflirt scope --new-project --source=vivino.com ready

Tell us what
to extract.
We do the rest.

20-minute scoping call. Pilot dataset within the week. Production within two. Whether you need a one-off wine catalogue dump or a continuous price-monitoring feed across 100K vintages — we scope, build, and operate the pipeline. Tell us what you need.

hello@dataflirt.com · Bengaluru · IST · typical reply < 4h
Related Scrapers

More in food drink and kitchen

Services

Data Extraction for Every Industry

View All Services →