How to Scrape Viator Tour and Activity Listings (Step-by-Step Guide)

If you want to scrape Viator tour and activity listings for travel market research, price monitoring, or competitor analysis, this guide walks you through the entire process. You will learn what data you can extract, how to automate the collection, and how to turn raw tour listings into actionable travel industry intelligence.
Why Scrape Viator Data?
Viator is one of the world's largest online marketplaces for tours, activities, and experiences, with listings spanning thousands of destinations globally. Owned by TripAdvisor, it connects travelers with tour operators and activity providers — from walking tours in Paris to snorkeling trips in Bali.
That makes Viator an invaluable data source for anyone working in the travel industry. Whether you run a competing platform, operate a travel agency, or analyze tourism trends, Viator's listings reveal what travelers are booking, how much they pay, and which destinations are in demand.
Businesses scrape Viator data for several reasons:
- Travel market research — analyze tour demand, pricing patterns, and activity popularity across destinations
- Price monitoring — track how tour operators price their activities and identify competitive pricing opportunities
- Competitor analysis — study competing tour operators, their offerings, ratings, and pricing strategies
- Travel aggregator platforms — build tour comparison tools or travel planning applications powered by real listing data
- Tourism analytics — analyze travel trends, seasonal demand shifts, and destination popularity over time
Manually browsing Viator and copying tour details is impractical. A single destination can have hundreds of activity listings, and pricing changes frequently based on season and availability. Automation is the only realistic approach at scale.
What Data You Can Extract from Viator
The Viator Scraper extracts structured data from tour and activity pages. Here are the key fields you can collect:
| Field | Description | Example |
|---|---|---|
| Tour name | The full title of the tour or activity | Martha's Vineyard Daytrip from Boston with Round-Trip Ferry & Island Tour Option |
| Price | Current listing price | $119 |
| Currency | Price currency | USD |
| Rating | Average review rating | 4.5 |
| Review count | Total number of reviews | 2,709 |
| Start date | Available start date for the tour | 2025-01-01 |
| Destination | Full location name | Boston, Massachusetts |
| City | City where the tour operates | Boston |
| Country | Country of the tour | USA |
| Tour image | URL of the listing's main image | dynamic-media.tacdn.com/media/... |
| Listing URL | Direct link to the tour on Viator | viator.com/tours/Boston/Day-Trip-to-Marthas-Vineyard/... |
This is the kind of data that would take hours to compile manually for even a single destination. With a scraper, you can extract hundreds of tour listings across multiple destinations in minutes.
Common Use Cases for Viator Data
Travel Market Research
Viator data reveals what travelers are booking and how much they are willing to pay. Analyze tour volumes, pricing distributions, and rating patterns across destinations to understand market demand. Identify which types of activities — food tours, adventure experiences, cultural excursions — dominate specific markets.
This data helps travel companies make informed decisions about where to expand, what experiences to offer, and how to price them competitively.
Price Monitoring
Tour pricing on Viator changes based on season, demand, and competition. Scraping listings regularly lets you track pricing trends over time, detect seasonal patterns, and identify when competitors raise or lower their prices.
For tour operators, this intelligence is critical for staying competitive. For travel agencies, it helps ensure you are offering the best deals to your customers.
Competitor Analysis
If you operate tours or activities, Viator data shows you exactly what your competitors offer, how they price their experiences, and how customers rate them. Compare your listings against similar tours in your destination to identify strengths, weaknesses, and opportunities.
Track competitor review counts and ratings over time to understand which operators are growing and why.
Travel Aggregator Platforms
Building a tour comparison site or travel planning tool? Viator data provides the structured listing information you need — tour names, prices, ratings, destinations, and images. Feed this data into your platform to give travelers a comprehensive view of available activities.
Tourism Analytics
Tourism boards, hospitality companies, and investors use Viator data to analyze travel trends at scale. Track which destinations are growing in popularity, which activity categories are expanding, and how pricing shifts across seasons and regions.
Challenges of Extracting Viator Data Manually
Before jumping into the tutorial, it is worth understanding why scraping Viator is harder than it looks:
- Massive listing volume — popular destinations like Paris, Rome, and New York have hundreds of tour listings each, spread across many pages
- Dynamic content loading — Viator uses JavaScript-heavy rendering, so simple HTTP requests will not capture the data
- Complex filtering — listings can be filtered by category, price, rating, and availability, creating many possible data combinations
- Frequent price changes — tour prices change based on season and demand, making manual snapshots unreliable
- Maintenance overhead — Viator updates its frontend regularly, which means custom scrapers break and need constant fixing
Building and maintaining your own Viator scraper is a significant time investment. For most use cases, using a pre-built, maintained solution is far more practical.
Step-by-Step: How to Scrape Viator Listings
Here is how to scrape Viator data using the Viator Scraper on Apify.
Step 1 — Choose Your Tour or Activity URLs
Start by deciding what tours or activities you want to extract. Go to Viator and browse to the listings you are interested in. For example:
- Day trips from Boston — browse Boston tours and copy individual activity URLs
- Rome food tours — search for food tours in Rome and select relevant listings
- New York City attractions — browse top-rated activities in NYC
Copy the URLs of the tour detail pages you want to scrape. Each URL should point to a specific activity listing on Viator.
Step 2 — Configure the Scraper Input
Head to the Viator Scraper on Apify and configure your run:
- Paste your Viator tour or activity URLs into the input field
- You can add multiple URLs to scrape different tours and destinations in a single run
- Review the settings and click Start to begin the extraction
The scraper accepts an array of Viator URLs and extracts all available structured data from each one.
Step 3 — Run the Scraper
Once started, the scraper will:
- Load each tour page and extract listing data
- Parse structured metadata including prices, ratings, reviews, and location details
- Handle dynamic content loading to capture all available information
- Store results in a clean, structured dataset
Processing time depends on the number of URLs you provide. Most runs complete within a few minutes.
Step 4 — Export Structured Results
Once the scraper finishes, you can export the results in multiple formats:
- JSON — ideal for developers building data pipelines or travel platforms
- CSV — perfect for spreadsheet analysis in Excel or Google Sheets
- API — access results programmatically via the Apify API for automated workflows
Each record includes the full set of structured fields: tour name, price, currency, rating, review count, destination, dates, images, and direct URLs.
Ready to try it? Run the Viator Scraper on Apify and get your first dataset in minutes.
Example Output (Real Data Preview)

Here is what the actual output looks like from the Viator Scraper. Each tour listing returns a structured JSON object:
{
"name": "Martha's Vineyard Daytrip from Boston with Round-Trip Ferry & Island Tour Option",
"url": "https://www.viator.com/tours/Boston/Day-Trip-to-Marthas-Vineyard/d678-5491MARTHA",
"image": "https://dynamic-media.tacdn.com/media/photo-o/2e/f3/83/c2/caption.jpg?w=800&h=600&s=1",
"startDate": "2025-01-01",
"locationName": "Boston, Massachusetts",
"addressLocality": "Boston",
"addressCountryName": "USA",
"offerPrice": "119",
"offerCurrency": "USD",
"ratingValue": 4.5,
"bestRating": 5,
"worstRating": 1,
"reviewCount": 2709
}
Key things to notice:
- Pricing details — price and currency for direct comparison across tours and destinations
- Rating and reviews — average rating and total review count for evaluating tour quality and popularity
- Location data — destination name, city, and country for geographic filtering and analysis
- Availability — start date information for understanding tour scheduling and seasonal patterns
- Tour image — listing photo URL for visual review without visiting Viator
- Direct URL — link to the full tour listing for reference and deeper research
This structured format makes it straightforward to import into any database, spreadsheet, or analytics tool.
Try the Viator Scraper now — no coding required.
Automating Travel Market Intelligence
For ongoing price monitoring or trend tracking, you do not want to run the scraper manually every time. The Apify platform supports full automation:
Scheduled Runs
Set up recurring scrapes on any schedule — daily, weekly, or monthly. The scraper runs automatically and stores results in a dataset you can access anytime. Daily runs work well for price monitoring during peak travel seasons, while weekly runs are sufficient for general market research.
API Integration
Use the Apify API to trigger scraper runs programmatically and retrieve results. This lets you integrate Viator data into your existing workflows:
- Feed tour data into travel comparison platforms automatically
- Trigger alerts when prices drop below a threshold for specific tours
- Build dashboards that update with fresh pricing and availability data
- Connect to tools like Zapier, Make, or custom data pipelines
Seasonal Monitoring
Travel is inherently seasonal. Combine scheduled scraping with historical data storage to track how tour pricing and availability shift across seasons. Identify peak pricing windows, off-season opportunities, and year-over-year trends for specific destinations.
Node.js Example
For a complete working example showing how to call this scraper from Node.js, see the GitHub repository.
Webhooks
Configure webhooks to get notified when a scraper run completes. This is useful for event-driven architectures where you want to process new tour data as soon as it is available.
Using Viator Data for Travel Analytics
Viator data is valuable for building intelligent travel tools and analytics platforms.
Tourism Trend Analysis
Track tour popularity across destinations over time. Identify which destinations are gaining traction, which activity types are growing, and where new opportunities are emerging. Review counts and rating trends provide quantitative signals that complement qualitative market research.
Destination Popularity Tracking
Compare tour volumes, average ratings, and pricing across destinations to build destination ranking models. This data helps travel companies decide where to invest in new offerings and helps travelers discover trending destinations.
Recommendation Systems
Build tour recommendation engines using Viator data. Use attributes like destination, price range, rating, review count, and activity type to suggest relevant experiences to travelers based on their preferences and budget.
Travel Marketplace Dashboards
Power internal or customer-facing dashboards with real-time Viator data. Display pricing trends, top-rated tours, and destination comparisons to support decision-making for travel professionals and consumers alike.
Does Viator Provide an API?
Viator offers a partner API, but it has significant limitations:
Viator Partner API
Viator's API is available through its TripAdvisor partnership program. Access is restricted to approved affiliates and partners, and the application process requires demonstrating a relevant use case and meeting traffic thresholds.
API Access Restrictions
Even approved partners face limitations on what data they can access and how they can use it. The API is designed primarily for booking integration, not for comprehensive data extraction or market research.
Data Gaps
The partner API does not expose the same breadth of listing data available on public Viator pages. For detailed competitive analysis, pricing research, or comprehensive destination coverage, the API alone is insufficient.
The Viator Scraper gives you a practical alternative — structured tour data on demand, without partner approval or access restrictions.
Why Use a Viator Scraper Instead of Building One
Building a custom Viator scraper sounds straightforward until you start dealing with the reality:
- Infrastructure complexity — Viator requires browser-level rendering, proxy rotation, and sophisticated request management. Setting this up from scratch is a significant engineering project.
- Maintenance cost — Viator updates its frontend regularly. Every update can break your scraper, requiring immediate fixes to keep your data pipeline running.
- Proxy management — reliable scraping at scale requires proxy rotation and request throttling to avoid blocks. Managing this infrastructure takes time and money.
- Scaling challenges — scraping thousands of tour pages across multiple destinations requires distributed infrastructure, queue management, and monitoring. The operational overhead adds up fast.
- Opportunity cost — every hour spent building and maintaining a scraper is an hour not spent analyzing travel trends and making business decisions
Unless you have very specific requirements that no existing tool can meet, using a maintained scraper lets you focus on what to do with the data instead of how to collect it.
Try the Viator Scraper
The Viator Scraper extracts structured data from Viator tour and activity pages — tour names, prices, ratings, review counts, destinations, availability dates, images, and direct URLs.
What you get:
- Structured JSON or CSV output ready for analysis
- All key tour and destination data fields in a single export
- Multiple URL support in a single run
- Scheduled runs for ongoing price monitoring
- API access for integration into your workflows
- No coding or scraper maintenance required
Start scraping Viator now — your first run takes less than 5 minutes to set up.
If you are building a travel data pipeline, combine Viator tour data with other sources like AliExpress for e-commerce analytics, Bloomberg news for travel industry news, or Clutch for finding travel tech agencies.
Legal and Ethical Considerations
Web scraping occupies a well-established legal space, but responsible practice matters:
- Public data only — the Viator scraper extracts publicly visible tour information that anyone can see by visiting Viator. No login or authentication is required.
- Respect rate limits — the scraper is designed to make requests at a reasonable pace to avoid overloading Viator's servers
- No content republishing — extracting listing data for analysis is different from republishing tour descriptions or images. Always respect copyright and intellectual property.
- Compliance — if you operate in the EU or California, ensure your data handling complies with GDPR or CCPA. This primarily applies to how you store and process the data, not the collection itself.
Frequently Asked Questions
Is scraping Viator legal?
Scraping publicly available data from Viator is generally legal. The tour listings are visible to anyone who visits the site without logging in. However, you should always use the data responsibly, comply with local privacy regulations, and avoid overloading Viator's servers with excessive requests.
Does Viator provide an API?
Viator offers a partner API through its parent company TripAdvisor, but access is restricted to approved affiliates and partners. The API does not provide open access to the full depth of listing data available on public pages. A scraper is the practical alternative for extracting structured tour data at scale.
What data can be extracted from Viator?
You can extract tour names, prices, currencies, rating scores, review counts, start dates, destination names, city and country details, tour images, and direct listing URLs. Each tour is returned as a structured JSON object.
Can I export Viator tour listings?
Yes. The Viator Scraper supports exporting results as JSON, CSV, or via API. CSV exports can be opened directly in Excel or Google Sheets for analysis.
How often can tour data be updated?
You can schedule scraper runs as often as you need — daily, weekly, or on a custom schedule. For price monitoring, daily runs ensure you catch pricing changes quickly. For general travel market research, weekly runs provide a good balance of freshness and efficiency.
How many Viator listings can I scrape at once?
The scraper can process multiple Viator URLs in a single run. There is no hard limit on the number of listings — the run time scales with the volume of URLs you provide.
About the Author
This guide was written by Piotr, a software engineer with hands-on experience building and maintaining web scrapers at scale. He develops and maintains a suite of data extraction tools on the Apify platform, helping businesses automate their data collection workflows.
Need help with your scraping project?
Book a free discovery call and let's scope your project together.
Book a Call