January 2026 Releases
Executive Summary
January delivered a major new capability — Shared Dashboard Links — enabling users to share password-protected, read-only dashboard views with external stakeholders for the first time. Alongside this, significant reporting accuracy improvements resolved a 15-day customer issue with weekly data alignment, corrected hotel data freshness calculations, and unblocked feeder market analysis for smaller markets. Export capabilities expanded with JPG chart downloads and sort-preserving PDF exports, and the Revenue Manager login experience was streamlined with flexible two-factor authentication.
NEW FEATURES
-
New: Shared Dashboard Links
-
Users can now generate public links to share dashboards with anyone — even recipients without platform accounts. Shared links support optional password protection, configurable expiration dates, and per-section filter overrides so you can tailor the view for each audience. An access log tracks who viewed the link, when, and from where. Both custom dashboards and template dashboards can be shared.
-
-
New: Combined OTA Property Count Report
-
A new Combined OTA Property Count report is now available in the report catalog, providing unified Airbnb and VRBO property count analysis in a single view.
-
-
New: Feeder Market KPI Set
-
The Feeder Market KPI set has been published and is now available for feeder market analysis in dashboards and reports.
-
-
New: Booking Source Chart Visualization
-
Charts grouped by booking source now display dedicated colors for each channel (Direct, Airbnb, VRBO, Booking.com, Expedia, Other), making it easy to visually distinguish performance across booking channels.
-
-
New: DMO Individual Market Toggle
-
Direct, VRBO, and Airbnb DMO benchmarking reports now include a "Show Individual Markets" filter toggle, letting Destination Data customers switch between aggregate and individual market views.
-
-
New: DestinationData Template Gallery
-
DestinationData customers now receive personalized prebuilt dashboard template recommendations based on their account characteristics (Hotel, Direct, OTA subtypes) instead of a generic catalog list.
-
-
New: Customer ID in Company Settings
-
A read-only Customer ID field with a one-click copy button is now available in Settings → Company Information, making it easy to share your account identifier with support or integration partners.
-
-
New: Keystone Program Enrollment
-
The Keystone Program is now available for opt-in enrollment. Users can view their enrollment status, accept the program agreement, and opt out at any time from within the platform.
-
Export Improvements
-
New: JPG Chart Export
-
Individual charts can now be exported as high-quality JPEG images. The JPG export option is available in both the report export menu and the report modal header for sections containing a single chart.
-
-
New: PDF Export Preserves Table Sorting
-
When you sort a table column in the dashboard, that sort order is now preserved when exporting to PDF. Total and summary rows remain at the bottom regardless of sort direction.
-
-
Fixed: Chart type selection lost during PDF export
-
When a user switched a chart between Bar and Line view and then exported to PDF, the export rendered with the original chart type instead of the selected one. The user's chart type choice is now correctly preserved in exports.
-
Report & Dashboard UX Improvements
-
New: Filter Propagation When Adding Reports to Dashboards
-
When adding a report to a new dashboard or section from a report view, the current filters are now automatically copied to the new section. This includes special handling for combined arrival and booking date range filters.
-
-
New: Filter Propagation to Unit Detail Modals
-
When opening a unit detail modal from a report row, the active filters and data type context are now passed through, preserving the current filter state. This is particularly useful for Feeder Market dashboards with special date range handling.
-
-
New: Section Filter Validation
-
Dashboard sections now validate required filter fields (date range, compare ranges, market IDs) before saving. Sections with incomplete filters display a warning, preventing invalid configurations from being saved.
-
-
New: Hotel Data "Last Updated" Label
-
Hotel data reports now display "Last Updated" timestamps instead of "As Of" in the report modal and PDF exports. This better reflects that hotel data represents the most recent synchronization point, while other data sources (Airbnb, VRBO, Direct, PM) continue to show "As Of" timestamps. Localized across all supported languages.
-
Authentication & Login Experience
-
Improved: Revenue Manager Two-Factor Authentication
-
Revenue Managers now have a more streamlined login experience:
- Two-factor authentication is now optional — organizations can choose single-factor or two-factor based on their security requirements
- Users transitioning from the legacy portal no longer need to verify their identity twice
- Revenue Managers with 2FA now properly reach their account selection screen after PIN validation
- Why this matters: Revenue Managers can access the platform faster, and organizations have flexibility in their security requirements.
Report Naming Clarifications
The following reports were renamed for consistency and clarity:
|
Previous Name |
New Name |
|
Market Guest Checkins By Date Chart |
Market Bookings By Date Chart |
|
Market Checkins By Date Table/Chart |
Market Checkins By Booking Date Table/Chart |
|
PM Bookings Table By Date |
PM Bookings By Date Table |
REPORTING BUG FIXES
Report & Dashboard
-
Fixed: Season picker did not show all primary date range options
-
Primary date range options marked as "PrimaryDateRangeOnly" were not appearing in the compare range picker. All valid primary ranges are now correctly available across all date range anchors.
-
-
Fixed: "Collapse All Sections" toggle did not work correctly
-
The Collapse All / Expand All toggle was checking whether the collapse state object had any keys rather than whether any section was actually collapsed, causing the toggle to malfunction.
-
-
Fixed: Dashboard Public/Private toggle showed reversed confirmation messages
-
The confirmation dialog when toggling a dashboard between Public and Private was showing the opposite message. Labels and confirmations now correctly reflect the action being taken.
-
Reporting Data Accuracy Fixes
-
Fixed: Weekly data shifted by one or more days for non-Monday turn days
-
Weekly report bucketing was misaligned between the application and database layers when properties used non-Monday turn days (common in hospitality). This caused gaps in week coverage and incorrect data alignment across PM benchmarking, OTA, and time-series reports using weekly breakdowns.
-
Why this matters: This was a 15-day customer-reported issue. Weekly aggregations now correctly align regardless of the configured turn day.
-
-
Fixed: Hotel reports showed "no data available" for recent dates
-
Hotel data reports were calculating available dates based on the current date rather than actual data snapshot availability from the data warehouse. When requesting dates beyond the latest published weekly snapshot, reports returned empty results. Dates are now derived from actual snapshot availability.
-
-
Fixed: Small or seasonal markets showed no feeder market data
-
The minimum guest checkin threshold for feeder market reports was set to 5, preventing customers with smaller or emerging markets from seeing any data. The threshold has been lowered to 1, unblocking feeder market analysis for all market sizes.
-
-
Fixed: Direct Market benchmarking missing cancelled bookings for Data customers
-
DestinationData customers were not always seeing cancelled bookings in Direct Market benchmarking and feeder market reports. Cancelled bookings are now always included for Data customers regardless of the "As Of" date selection. Property Manager accounts retain the existing conditional behavior.
-
-
Fixed: Compare range year labels showed 4-digit years and incorrect "As Of" indicators
-
Chart comparison period labels now use compact 2-digit years (e.g., "Jan 25" instead of "Jan 2025"), and comparison periods no longer incorrectly display "As Of" timestamps that only apply to the primary period.
-
-
Fixed: Monthly charts showed full dates instead of month names on X-axis
-
Charts with monthly time scales were displaying full date strings (e.g., "1/1/26") instead of abbreviated month names ("Jan", "Feb", "Mar"). Month labels now display correctly with culture-aware formatting.
-
-
Fixed: Landing page showed $0 data
-
The landing page performance metrics could show $0 values when no markets were initially selected. Queries now execute immediately on page load, and the landing page auto-populates default markets from the user session.
-
-
Fixed: Occupancy metric removed from Hotel and OTA checkins reports
-
Adjusted Paid Occupancy was appearing on Hotel and OTA check-in reports where it is not a meaningful metric for those data sources. Occupancy now only displays for Direct, PM, and other applicable data sources.
-
-
Fixed: Negative bedroom counts in OTA reports
-
OTA property data with invalid negative bedroom values (from data ingestion errors) was skewing bedroom count aggregations and appearing as negative groupings. These records are now filtered out.
-
-
Fixed: Guest location filter not working
-
The guest location filter (geoNames) was missing from the GraphQL query fragment, causing guest location filtering to have no effect across all reports and dashboards.
-
-
Fixed: Inactive units included in KPI calculations
-
KPI queries were using a static boolean field to determine whether a unit was active, which could be out of sync with actual service dates. The filter now uses the property's out-of-service date, ensuring units currently out of service are correctly excluded from KPI reporting.
-
-
Fixed: Revenue scorecard tooltip showed incorrect label
-
The landing page revenue scorecard tooltip displayed "Unit Revenue (Recognized)" instead of the correct "Unit Revenue (Nightly)". Updated across all supported languages.
-
-
Fixed: Unit grouping drill-through modals used unreliable filtering
-
Marketing Source and Booking Source drill-through modals in unit grouping reports used property ID aggregation for filtering, which was unreliable. Filtering now uses semantic identifiers (marketing source names and booking source IDs) for more consistent behavior.
-
-
Fixed: Custom Unit Groupings failed to load
-
Custom unit grouping reports could fail when the grouping query returned UUID values that couldn't be properly mapped to the expected data type. The query now correctly converts identifiers for reliable grouping.
-