Skip to content

SAAS

Daily Active Users / Monthly Active Users Ratio

Gauge daily stickiness of monthly users — SQL to pair DAU and MAU.

See all Playbooks

In the dynamic world of SaaS, data is your roadmap to clarity and confidence.

This playbook equips you with ready-to-use SQL queries for the metrics that drive growth, retention, and profitability.

No need for advanced technical skills—just adapt the table and column names to your database, and let the insights unfold.

How to Use This Playbook

  1. Choose your metric.
    Find the metric that answers your most pressing questions.
  2. Copy the SQL.
    Swap in your own table and column names.
  3. Run it in your database tool.
    Watch as the numbers reveal your business’s story.

Industry Benchmarks & Standards

Metric

Industry Benchmark (2025)

What It Means

Net Revenue Retention (NRR)

101% (B2B SaaS median)

Above 100% means your customers are growing their investment.

Customer Churn Rate

5% - 10% (varies by segment)

Lower is better; aim for <5% in high-growth SaaS.

Annual Recurring Revenue (ARR) Growth Rate

17% - 26% (median, varies by size)

Top performers can exceed 50%.

DAU/MAU Ratio

20% - 50% (varies by product)

Higher means your users are truly engaged.

LTV/CAC Ratio

3:1 or higher

Ensures your business model is robust and sustainable.

Contribution Margin

70% - 85% (healthy SaaS)

Direct costs should be a small slice of your revenue pie.

Average Revenue Per User (ARPU)

Varies by segment

Higher ARPU means your customers find more value in your product.

Your Data Foundation

These tables are the pillars of your SaaS analytics:

  • main.saas_data_clients: The foundation of every client relationship.
    • client_id, client_name, created_at
  • main.saas_data_customers: Every user’s journey, captured in detail.
    • customer_id, client_id, customer_name, signup_date, is_active
  • main.saas_data_plans: Your product’s menu of options.
    • plan_id, client_id, plan_name, monthly_price, annual_price, is_active
  • main.saas_data_subscriptions: Captures the full lifecycle: sign-ups, renewals, and cancellations.
    • subscription_id, client_id, customer_id, plan_id, start_date, end_date, status
  • main.saas_data_payments: The flow of revenue through your business.
    • payment_id, client_id, customer_id, subscription_id, amount, payment_date, is_refund
  • main.saas_data_events: The story of every login, upgrade, and farewell.
    • event_id, client_id, customer_id, event_type, event_date, is_churn
  • main.saas_data_costs: The price of delivering value to your customers.
    • cost_id, client_id, customer_id, cost_type, cost_amount, cost_date

Daily Active Users / Monthly Active Users (DAU/MAU) Ratio

The DAU/MAU ratio is the pulse of your product’s engagement. It shows how often users return, revealing whether your product is woven into their daily routines or just an occasional stop. A high ratio signals that users aren’t just signing up — they’re actively coming back, interacting, and finding consistent value. Tracking this metric helps you understand user stickiness, build habits around your product, and identify opportunities to deepen engagement even further.

Source Table

Columns used

main.saas_data_events

event_date, customer_id, event_type

sql
WITH
  "daily_active_cte" AS (
    SELECT
      DATE_TRUNC('day', "event_date") AS "day",
      COUNT(DISTINCT "customer_id") AS "dau"
    FROM "main"."saas_data_events"
    WHERE "event_type" IN ('login', 'feature_use')
    GROUP BY DATE_TRUNC('day', "event_date")
  ),

  "monthly_active_cte" AS (
    SELECT
      DATE_TRUNC('month', "event_date") AS "month",
      COUNT(DISTINCT "customer_id") AS "mau"
    FROM "main"."saas_data_events"
    WHERE "event_type" IN ('login', 'feature_use')
    GROUP BY DATE_TRUNC('month', "event_date")
  )

SELECT
  "monthly_active_cte"."mau",
  "daily_active_cte"."dau",
  ROUND(
    100 * CAST("daily_active_cte"."dau" AS DOUBLE) / NULLIF("monthly_active_cte"."mau", 0),
    2
  ) AS "dau_mau_ratio"
FROM "daily_active_cte"
JOIN "monthly_active_cte"
  ON DATE_TRUNC('month', "daily_active_cte"."day") = "monthly_active_cte"."month"

Visualization Ideas:

  • Circular or Linear Gauge: Visualize Stickiness Level based on range
  • Progress Bar: Visualize how much stickiness a product has within a defined range

‍

‍

Term

Definition

ACV

Annual Contract Value: The normalized annual value of a contract.

TCV

Total Contract Value: The total value of a multi-year contract.

GRR

Gross Revenue Retention: The percentage of revenue retained from existing customers, excluding expansion.

NPS

Net Promoter Score: A measure of customer satisfaction and loyalty.

Payback Period

The time it takes to recover Customer Acquisition Cost from a customer.

CAC

Customer Acquisition Cost: The cost to acquire a new customer.

ARR

Annual Recurring Revenue: The annualized value of recurring revenue.

MRR

Monthly Recurring Revenue: The monthly value of recurring revenue.

NRR

Net Revenue Retention: Revenue retained and expanded from existing customers.

Churn Rate

The percentage of customers who cancel or do not renew.

DAU/MAU Ratio

The ratio of daily active users to monthly active users.

LTV

Customer Lifetime Value: The total revenue expected from a customer before they leave.

Contribution Margin

Profit after direct costs.

ARPU

Average Revenue per User: The average revenue generated per customer.

Implementation Checklist

  1. Define your metrics and add them to a data dictionary.
  2. Ensure your database schema supports the required calculations.
  3. Write and test SQL queries for each metric.
  4. Import results into your BI tool. Get started with DataBrain today!
  5. Build and share dashboards with stakeholders.
  6. Schedule regular reviews and updates.

Unlock the power of your data.
Start using this SQL Playbook today!

“In the world of SaaS, data is everyone’s responsibility. With this playbook, anyone can own their metrics and drive better outcomes.”

Now, simply run the SQL queries on your data and unlock the power of your SaaS analytics!

See Databrain on your own data

30 minutes. We connect your warehouse and show you governed answers for your team, or analytics inside your product, on your own schema.

Subscribe to our newsletter

Product updates and practical guides. No spam, unsubscribe anytime.

You're in. A welcome email is on its way.

That did not go through. Check the email and try again.