Introduction
Booking curves are helpful for understanding how rooms and revenue “build” over time. In Insights
, you’ll find templated booking curve tiles in places like our Detailed Lead Time Dashboard (which already includes standard booking curve visualizations) and the Pick-up Tile Gallery (which provides a ready-made occupancy booking curve). These built-in tiles mean you don’t necessarily have to create a new booking curve from scratch.
However, if you’re curious about how these booking curves work—or if you’d like to customize them further—this article walks you through the behind-the-scenes logic. We’ll also explain why booking curves in Insights
sometimes differ from those elsewhere in our platform.
What Is a Booking Curve?
A booking curve tracks the accumulation of bookings (and their associated revenue) as time goes by, focusing on a particular stay period. This gives you insight into:
Pacing: How quickly bookings (and revenue) are building up.
Historical Comparisons: Whether your current performance is ahead or behind the same period last period (STLP).
In Insights
, this curve can be tailored to your specific needs—more so than in other parts of our platform—which is why you may spot slight differences.
Templated Booking Curves vs. Custom
Templated Tiles: Many users will find all they need in our Detailed Lead Time Dashboard or by using the Occupancy Booking Curve in the Pick-up Tile Gallery. These options provide immediate visualizations of your property’s pacing without extra setup.
Custom Curves: If you have special requirements—such as analyzing a niche date range or combining multiple metrics—
Insights
lets you build a completely custom booking curve. This flexibility can be a game-changer if you’re exploring unique questions about your data.
Below, we’ll outline how to build a simple custom booking curve from scratch, so you can see how everything comes together under the hood.
Building a Booking Curve in Insights
1. Gather Your Data: Pick-Up Topic
Since a booking curve tracks how bookings accumulate over time, the Pick-up topic in Insights
is your best starting point. For example, let’s say we want to visualize the booking trend for This Month’s Accommodation Revenue, compared to last year’s pick-up on the same day of week.
Here are the dimension, filter-only and measure fields you’ll need for the query:
Stay Date (Dimension)
Defines the stay period you’ll be filtering on. In this example, “This Month.”
Comparison Period (Filter)
Defines the Comparison Period you’ll be contrasting with the current Stay Date(s) defined. In this example, we’ll focus on comparing to the same time last year, “Last Year (DoW).”
Update Date (Dimension)
Defines your pick-up timeline. It represents each date that a booking (and its revenue) was recorded or updated.
Accom. Revenue Pick-up (Measure)
Shows the incremental revenue picked up on each update date for the stay period.
Accom. Revenue Pick-up STLP (Measure)
Compares the same pick-up timeline to the previous period.
Pro Tip: For clear offset alignment, apply a filter of 60 months ago for 84 months on the update date, set the query limit to 10,000 rows, and enable “Fill in Missing Rows.” This ensures all booking data (including older bookings) are fully captured, especially helpful if you’re using Excel formulas like XLOOKUP.
Accumulated Accom. Revenue and Accumulated Accom. Revenue STLP
These are simply running totals of your pick-up data. The Running Total Calculation in
Insights
lets you generate these metrics easily. More on workbook functions & formulas here.
By combining these measures, you have the building blocks for a basic booking curve.
2. Putting Things Together: Displaying the Right Timeframe
Now that you have the data, it’s time to assemble the final view. This step isn’t strictly required—your curve can technically be shown as is—but it greatly improves readability by limiting the time window to the portion most relevant to your analysis.
Max Stay Date Selected
Create a separate tab (or Explore) containing a measure that aggregates the stay date to find the last stay date in your current filter range.
Title this tab: “[hidden] Max Stay Date”
Connect it to a dashboard filter so that when you choose a new date range, this measure automatically updates to show the final stay date in that range.
This will be your reference point for trimming down extra time ranges in the main booking curve.
Booking Curve Tab
Apply a Date Calculation:
For instance, you might set a formula like:
=IF(OR(A1 <= ('[hidden] Max Stay Date Selected'!A$1 - 360), A1 > '[hidden] Max Stay Date Selected'!A$1), NULL, A1)
A1 references the update date.
This example shows only the 360 days leading up to the latest stay date (and excludes any dates beyond).
Set Query Limits:
Again, use a 10,000-row limit to avoid cutting off data prematurely.
Use XLOOKUP (or Similar):
Pull in your accumulated revenue measures, both current and STLP, for the “valid” dates. You can also limit it to days up to “today” if you only want to see actuals so far.
When you put these two tabs together, your chart will zero in on the most relevant timeline—making the final booking curve easier to interpret.
Booking Curves and Revenue Adjustments
In other areas of our platform (like the Performance tab in the Optimization product, image below), you might notice booking curves that don’t match exactly what you see in Insights
. Usually, this comes down to how revenue adjustments are attributed:
Insights:
If a booking’s revenue changes after check-out (e.g., a late fee or correction is posted to a booking),
Insights
attributes that adjustment to the actual date it was updated. This makes your booking curve an accurate reflection of revenue pacing as it happens.
Other Areas:
Some products or pages attribute late revenue changes back to the stay date rather than the update date. This approach gives a finalized snapshot of total revenue for that stay date but won’t capture the time-based evolution of the revenue in the same way.
Understanding these differences helps you interpret your curves in context.
Data Aggregation for Multi-Date Analyses
When comparing multiple stay dates (e.g., an entire month), aggregated data can lead to slight differences in how the curve is displayed—particularly if there are post-stay adjustments across multiple dates. This doesn’t mean your data is wrong; it’s just reflecting the different ways in which adjustments can be applied.
Conclusion: How to Read and Use Booking Curves
Whether you’re using a templated tile or building your own curve, here are a few best practices:
Keep Scope in Mind
Narrower date ranges (like a single day) have fewer post-stay adjustments to worry about. Larger ranges (like a whole month or quarter) might capture more complexities.
Stay Alert to Adjustments
If you see unexpected changes in the curve, check whether they might be due to post-stay modifications that were logged at a later date.
Compare to Past Performance
Using STLP metrics alongside the booking curve helps you see if you’re pacing ahead or behind where you were previously.
Don’t Forget Templated Tiles
If you want a quick, standardized view, use the Detailed Lead Time Dashboard or Occupancy Booking Curve in our Pick-up Tile Gallery. Then, refine or customize only if you need deeper insights or special metrics.
Need Help?
If you have any questions—whether it’s about customizing a booking curve or interpreting one of our templated tiles—reach out to our Advisory team via chat. We’re always happy to help you get the most out of your data in Insights
.