Tour operator data analytics starts with one question: how much did we actually earn on each tour, after every reseller and every cost? Most operators can't answer it without a week of spreadsheets. Bookings sit in the booking system, OTA sales arrive in separate reports, and guide, vehicle and fuel costs live in accounting. This guide shows how to put them in one place, so the answer is a dashboard you open, not a project you start.
Why tour operator numbers never agree
A typical operator in Iceland sells the same tour in several places at once: its own website, a booking system such as Bókun, OTAs like GetYourGuide and Viator, and hotel desks and travel agents. Each channel reports in its own way. One counts the booking date, another the travel date. One reports gross price, another net of commission. Refunds and no-shows show up weeks later, in a different file.
So the head of sales, the accountant and the owner each have a different number for last month, and each is right by their own definition. Time goes into reconciling instead of deciding.
What a single source of truth means for an operator
A single source of truth is one database where every booking, from every channel, is stored the same way and joined to what it cost. In practice it holds four things:
- Bookings from every channel, with one definition of date, price, currency and status.
- Channel terms: the commission or net rate each reseller takes, so every booking carries its real revenue.
- Costs per departure: guides, vehicles, fuel, entrance fees and meals.
- Capacity: seats offered per departure, so you can see utilisation, not just sales.
With those joined, the questions that matter become simple to answer. Which tours make money after commission? Which channel brings the best yield, not just the most bookings? Which departures run half empty, and when should a second bus be added?
How the data gets there
Getting data into one place is an ETL job: extract, transform, load. For a tour operator that usually means:
- Extract bookings from the booking system's API or exports, OTA reports, and the accounting system.
- Transform them into one shape: the same currency, the same date rules, one product code for a tour that each OTA names differently, and the commission applied.
- Load the result into a data warehouse on a schedule, every hour or every night, with a check that flags missing or odd data.
The hard part is rarely the technology. It is agreeing the definitions. Is revenue counted on the booking date or the travel date? Is a cancellation with a fee revenue or not? Write those rules down once, build them into the pipeline, and every report after that agrees.
The dashboards worth building first
Start with three views and add more when people use them:
- Revenue after commission, by tour, channel and month, against the same month last year.
- Departures and utilisation: seats sold against seats offered, by tour and day, for the coming weeks.
- Channel mix: the share of bookings and of net revenue from each reseller, so you can see where the margin goes.
We build these in the BI tool a team already uses, such as Qlik Sense or Power BI, or as a custom dashboard inside the operator's own system.
An example: TourDesk
TourDesk connects hotels with tours and excursions from many vendors. Its data sat in separate systems for hotels, vendors, suppliers, car rentals and restaurants, which made it hard to see customer behaviour or regional market trends.
We joined those sources into one governed data foundation, with automated ETL pipelines and Qlik Sense dashboards on top. Incremental loads keep reporting close to real time, and teams track bookings, revenue and market performance by region. The full story is in the TourDesk case study.
Where to start
You don't need every source on day one. A good first step takes a few weeks:
- List the systems that hold bookings and costs, and who owns each.
- Agree the five or six definitions that cause the most arguments.
- Connect the booking system and the largest OTA first.
- Build the revenue-after-commission view and use it in the next monthly meeting.
Each new source after that is a smaller job, because the model and the rules are already in place.
If you run tours and want one view of bookings, channels and costs, our analytics work shows how we build it, and you can tell us where you are today.