Build RevPAR, ADR, and occupancy dashboards for hotels with Apache Superset. Real-time analytics for revenue management without platform overhead.
Hotel operations run on three fundamental metrics: Revenue Per Available Room (RevPAR), Average Daily Rate (ADR), and occupancy percentage. These numbers determine whether your property thrives or struggles. Yet most hotel chains still rely on spreadsheets, legacy property management systems (PMS) with clunky reporting, or expensive BI platforms like Looker and Tableau that take months to implement and drain capital budgets.
The problem isn't a lack of data—it's the gap between data and decision-making. Your PMS generates occupancy data in real time. Your accounting system tracks revenue. Your booking channels feed reservation data continuously. But connecting these sources into a single, actionable dashboard that your revenue manager can check before morning coffee? That's where most hotel operators fail.
Apache Superset solves this by providing a lightweight, open-source foundation for building production-grade dashboards without the vendor lock-in or astronomical costs of traditional BI platforms. D23 takes this further by managing Apache Superset infrastructure, adding AI-powered text-to-SQL capabilities for ad-hoc queries, and embedding analytics directly into your revenue management workflows.
This article walks through how to architect RevPAR, ADR, and occupancy dashboards using Apache Superset—what metrics to track, how to structure your data, and how to move from static reports to real-time decision support.
Revenue Per Available Room (RevPAR) is the single most important number in hotel operations. It answers the core question: "How efficiently are we converting our inventory into revenue?"
RevPAR is calculated as:
RevPAR = (Total Room Revenue ÷ Total Available Rooms) OR (ADR × Occupancy %)
Unlike occupancy alone, RevPAR forces you to optimize for both volume and price. A 100% occupied hotel charging $50/night generates the same RevPAR as a 50% occupied hotel charging $100/night. This metric prevents the common trap of chasing occupancy at the expense of rate.
In Apache Superset, you'll want to track RevPAR across multiple dimensions:
To build a RevPAR dashboard in Apache Superset, you'll need data from your PMS that includes:
Once connected to Apache Superset, you can create your first dashboard with a combination of line charts showing RevPAR trends, bar charts comparing room type performance, and heatmaps showing daily RevPAR by room category. The beauty of Apache Superset is that these visualizations update as your PMS data refreshes—no manual exports, no overnight batch processes.
Average Daily Rate (ADR) measures the average price you're charging per occupied room. It's the direct lever for revenue management—raise ADR, and RevPAR climbs (assuming you don't lose too much occupancy).
ADR = Total Room Revenue ÷ Rooms Sold
ADR dashboards need to answer these operational questions:
In Apache Superset, create an ADR dashboard with:
The key insight in ADR tracking is rate integrity. Many hotels discount too aggressively during high-occupancy periods, leaving money on the table. An Apache Superset dashboard makes this visible immediately: when occupancy hits 85%, is your ADR rising or falling? If it's falling, your revenue manager should investigate whether pricing rules are executing correctly.
Occupancy percentage measures what portion of your available rooms are sold on a given night.
Occupancy % = (Rooms Sold ÷ Rooms Available) × 100
Occupancy is the leading indicator of demand. Rising occupancy signals strong booking pace; falling occupancy signals weakening demand and the need for promotional activity or pricing adjustments.
Occupancy dashboards should track:
In Apache Superset, build an occupancy dashboard with:
Occupancy is also a proxy for market conditions. If your occupancy is falling while competitors' occupancy is stable, you have a competitive issue (pricing, positioning, or distribution). If everyone's occupancy is falling, it's a market issue, and you need to adjust pricing downward to defend volume.
Building a comprehensive hotel dashboard requires pulling data from multiple systems. Your PMS (like Opera, Micros, or Fosse) holds occupancy and booking data. Your accounting system (QuickBooks, NetSuite, etc.) tracks actual revenue. Your booking engine tracks channel performance. These systems rarely talk to each other natively.
Apache Superset acts as the integration layer. You can connect to:
The Apache Superset open-source platform supports dozens of database connectors, so you can query your PMS and accounting system in the same dashboard without manual data consolidation.
Here's a typical data flow:
For hotels with multiple properties, you'll want to add a property dimension to all metrics, allowing your VP of Revenue to compare RevPAR across the portfolio and drill down into underperforming properties.
Let's build a concrete RevPAR dashboard in Apache Superset. You'll need a table with these columns:
property_id: Identifier for each hotel propertydate: The night (check-in date)room_type: Standard, Deluxe, Suite, etc.segment: Corporate, Leisure, Group, OTA, etc.channel: Booking.com, Expedia, Direct, Walk-in, etc.rooms_available: Total rooms of this type available that nightrooms_sold: Rooms actually occupiedtotal_revenue: Total room revenue for this type/segment/channel combinationFrom this table, you can calculate:
Occupancy % = (rooms_sold / rooms_available) * 100
ADR = total_revenue / rooms_sold
RevPAR = total_revenue / rooms_available
In Apache Superset, create a calculated column (or SQL view) for each metric. Then build these visualizations:
1. RevPAR Trend Line (Top of Dashboard)
2. RevPAR by Room Type (Bar Chart)
3. Occupancy vs. ADR (Scatter Plot)
4. Segment Mix (Stacked Bar Chart)
5. Channel Performance (Table)
6. Daily Performance (KPI Cards)
Once you've built these visualizations, you can save them as a dashboard and set a refresh schedule. D23 manages the infrastructure so you don't have to worry about database performance, query optimization, or uptime—your dashboard stays fast even during peak demand periods.
Once you have historical RevPAR, ADR, and occupancy data flowing into Apache Superset, you can add forecasting. This is where managed Apache Superset with AI capabilities becomes powerful.
With text-to-SQL and AI-powered analytics, you can ask questions like:
You can integrate forecasting models (built in Python or R) that predict occupancy based on historical patterns, day-of-week effects, seasonality, and external factors (events, conferences, holidays). Then visualize the forecast in Apache Superset alongside actual performance.
For example:
This transforms your dashboard from a rear-view mirror (showing what happened) into a navigation system (showing where you're headed and where you need to adjust course).
One of the most powerful features of Apache Superset is embedding. Rather than asking your revenue manager to log into a separate BI tool, you can embed dashboards directly into your revenue management software, property management system, or internal web portal.
With D23's managed Apache Superset and API-first approach, you can embed dashboards with:
Embedded dashboards eliminate friction. Your revenue manager doesn't need to remember login credentials or navigate to a separate portal. They open their revenue management tool, and the RevPAR, ADR, and occupancy data is right there.
This is especially valuable for multi-property operators. A VP of Revenue at a 15-property chain can see all properties' RevPAR in one view, spot which properties are underperforming, and drill down to understand why (weak occupancy? Low ADR? Both?).
RevPAR is only meaningful in context. A $150 RevPAR might be exceptional for a budget property in a secondary market, or it might be terrible for a luxury property in a major city.
Your Apache Superset dashboard should include benchmarking data:
Industry sources like Hospitality Net and Hotel Online publish benchmarking reports. You can manually update your Apache Superset dashboard with this data, or integrate it via API if the source provides one.
The American Hotel & Lodging Association also publishes industry statistics that help contextualize your property's performance.
With benchmarking in place, your dashboard answers the critical question: "Are we winning or losing against the market?"
Dashboards are great for exploration, but they require someone to look at them. For critical metrics like RevPAR, you want alerts when something goes wrong.
Apache Superset supports alerting: you can set up rules like:
These alerts can trigger emails, Slack messages, or SMS notifications to your revenue manager. This way, they don't have to check the dashboard constantly—they're notified when action is needed.
With D23's managed infrastructure and AI capabilities, you can also enable anomaly detection. Machine learning models automatically flag unusual patterns (like a sudden drop in occupancy or an unexplained spike in ADR) without requiring you to manually define alert thresholds.
Why choose Apache Superset over Looker, Tableau, or Power BI for hotel dashboards?
Cost: Looker and Tableau charge per-user licensing fees, often $5,000–$15,000+ per year per user. For a hotel chain with dozens of revenue managers, this adds up quickly. Apache Superset is open-source and free. D23's managed Apache Superset charges based on query volume and data size, not per-user, so adding a new revenue manager costs nothing.
Speed to dashboard: Tableau and Looker require data modeling, semantic layers, and training. Apache Superset connects directly to your database and lets you build visualizations in minutes. You can have a working RevPAR dashboard in a day, not three months.
Flexibility: Traditional BI platforms are opinionated about how you structure data and build dashboards. Apache Superset is lightweight and flexible. You write SQL, you build charts, you're done. No complex semantic layers or metadata repositories.
Embedding: Embedding in Looker and Tableau requires additional licensing and complex configuration. Apache Superset embedding is built-in and straightforward.
AI and text-to-SQL: Newer BI platforms are adding AI features, but they're often bolt-ons. With D23's MCP (Model Context Protocol) integration, you get text-to-SQL and AI-powered analytics as a core feature. Ask a natural language question ("What was our RevPAR last Tuesday?") and get a chart instantly.
For hotel operators, the choice is clear: Apache Superset delivers 80% of the functionality of Looker or Tableau at 20% of the cost and in a fraction of the time.
Hotel data is sensitive. Your RevPAR, ADR, and occupancy data reveals your pricing strategy and demand patterns. You need to ensure this data is secure and access is controlled.
Apache Superset provides:
D23's managed Apache Superset adds enterprise-grade security, including encryption at rest, regular security audits, and compliance certifications (SOC 2, etc.).
Review D23's Privacy Policy and Terms of Service to understand data handling and security commitments.
For hotel chains with 5, 50, or 500 properties, a single dashboard needs to handle massive scale. Your Apache Superset instance needs to:
Apache Superset handles this with:
D23's managed Apache Superset service handles these optimizations for you, including database tuning, caching strategy, and query performance monitoring.
Ready to build? Here's how to get started:
Step 1: Audit your data sources
Identify where occupancy, revenue, and booking data live. Is it in your PMS database? A data warehouse? Spreadsheets? Can you access it via SQL or API?
Step 2: Design your data schema
Create a table (or view) that combines occupancy, revenue, and booking data. Columns should include date, property, room type, segment, channel, rooms available, rooms sold, and revenue. This is your source of truth for all hotel metrics.
Step 3: Connect to Apache Superset
If you're self-hosting, download Apache Superset and connect it to your database. If you're using D23's managed service, we handle the setup.
Step 4: Build your first chart
Start simple: a line chart of RevPAR over the last 90 days. Follow the official Apache Superset guide for creating your first dashboard.
Step 5: Add more charts
Once you have one chart working, add ADR, occupancy, segment breakdown, channel performance, etc.
Step 6: Set up alerts and refresh schedules
Configure your dashboard to refresh hourly (or daily, depending on your PMS update frequency). Set up alerts for critical metrics.
Step 7: Embed and distribute
Embed the dashboard in your revenue management tool or internal portal. Share the URL with your revenue team.
Apache Superset dashboards are the foundation. The next layer is AI-powered analytics.
With D23's text-to-SQL and MCP integration, your revenue manager can ask questions in plain English:
The AI interprets the question, generates SQL, queries your data, and returns a visualization. No need to learn SQL or dashboard design—just ask.
This democratizes analytics. Every revenue manager, not just data analysts, can explore data and answer their own questions.
For multi-property operators, AI analytics enable portfolio-wide insights: "Which of our properties is most exposed to occupancy risk? Which segments are driving growth? Where should we invest in marketing?"
Hotel revenue management is a real-time game. Your competitors are adjusting prices and marketing spend daily (or hourly). You need dashboards that show you what's happening now, not what happened last month.
Apache Superset, especially when managed by D23, gives you RevPAR, ADR, and occupancy dashboards that are:
Your revenue manager gets a single source of truth for hotel performance. Your VP of Revenue can spot underperforming properties and drill down to understand why. Your C-suite sees RevPAR trends and forecasts.
The result: better pricing decisions, higher occupancy, better rates, and higher RevPAR.
Start with a simple RevPAR trend chart. Add ADR and occupancy. Build segment and channel breakdowns. Integrate forecasting. Embed in your revenue management tool. Scale to your entire portfolio.
That's the Apache Superset journey for hotels. And D23 is here to manage the infrastructure so you can focus on revenue optimization.