Status Blocks
📚 Product Guide

Documentation

Learn how to set up and get the most out of Status Blocks.

Getting Started

Get up and running with Status Blocks in just a few minutes. Here's what you need to do:

1

Create your account

Sign up for a free account. No credit card required — the free plan gives you everything you need to get started.

2

Create a project

From your dashboard, click Create Project. Give it a name and choose a template to get pre-configured metrics, or start from scratch.

3

Copy your API key

Each project has a unique API key (starting with sb_). Find it in your project settings. You'll use this to send events from your application.

4

Send your first event

Use the API to send events from your application. Here's a quick example:

curl -X POST http://status-blocks.com/api/events \
  -H "Authorization: Bearer sb_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"event": "user_signup", "user_id": "123"}'

See the API Reference for full details and code examples in PHP, JavaScript, and Python.

5

Watch your metrics update

As events flow in, your metrics will automatically calculate and update on your dashboard. Charts, counters, and user tracking all happen in real time.

Projects

Projects are the core organisational unit in Status Blocks. Each project has its own set of metrics, events, tracked users, and funnels.

Creating a project

Navigate to your dashboard and click Create Project. You'll need to provide:

  • Name: A descriptive name for your project (e.g. "My SaaS App", "E-commerce Store")
  • Template: Choose a pre-built template or start blank

API keys

Each project has a unique API key used to authenticate requests. You can find and regenerate your API key in your project's Settings tab. API keys use the format sb_ followed by a 60-character random string.

Note: Regenerating your API key will immediately invalidate the old key. Make sure to update your application with the new key.

Project limits

The number of projects you can create depends on your plan. You can see your current limits in your billing settings.

Templates

Templates are pre-built metric packs designed for common use cases. When you create a project with a template, all the relevant metrics are automatically configured for you.

💰

SaaS Starter

The essential metrics for any SaaS business. Includes 7 pre-configured metrics:

Metric Type Event
Monthly Recurring Revenue Sum subscription_payment
Annual Recurring Revenue Formula mrr * 12
Total Users Unique Count user_signup
Active Users (30d) Unique Count * (all events)
New Signups Today Count user_signup
Churn Rate Count subscription_cancelled
ARPU Formula mrr / total-users
🛒

E-commerce

Track your online store performance. Includes 6 pre-configured metrics:

Metric Type Event
Total Orders Count order_completed
Total Revenue Sum order_completed
Average Order Value Average order_completed
Orders Today Count order_completed
Conversion Rate Formula (total-orders / page-views) * 100
Cart Abandonment Rate Formula (cart-additions - total-orders) / cart-additions * 100
🔌

API & Platform

Monitor your API or platform health. Includes 5 pre-configured metrics:

Metric Type Event
API Calls (24h) Count api_request
Error Rate Count api_error
Average Response Time Average api_request
Uptime Percentage Formula (api-calls-24h - error-rate) / api-calls-24h * 100
Active API Keys Unique Count api_request

You can also apply templates after project creation via the API. All template metrics can be customised or deleted after they're created.

Metrics

Metrics are the building blocks of your dashboard. Each metric is defined by a calculation type, an event to track, and optional filters.

Calculation types

Type Description Example
Count Count how many times an event occurs Total signups, orders today
Sum Sum the numeric values from events Total revenue, MRR
Average Calculate the average of numeric values Average order value, response time
Unique Count Count distinct tracked users Active users, unique visitors
Formula Derive values from other metrics ARPU, conversion rate, ARR
Last Seen Seconds since the last matching event was received Heartbeat monitoring, uptime checks

Configuring a metric

When creating or editing a metric, you can configure:

  • Name and description: How the metric appears on your dashboard
  • Icon: An emoji to visually identify the metric
  • Unit: Display unit (e.g. $, %, users)
  • Event name: Which event to track (or * for all events)
  • Value field: Which field to use for sum/average calculations
  • Metadata filters: Only count events matching specific metadata values

Time periods

Metrics are automatically calculated across multiple time periods:

  • Today — Events from the current day
  • This week — Events from the current week
  • This month — Events from the current month
  • This year — Events from the current year
  • All time — All events within your data retention period

Last Seen metrics

The Last Seen calculation type returns the number of seconds since the most recent matching event was received. This is useful for monitoring whether expected events are still arriving on schedule.

For example, if your application sends a heartbeat event every 60 seconds, you can create a Last Seen metric filtered to that event and set an alert for when the value goes above 120 — meaning no heartbeat has been received in over 2 minutes.

Tip: Combine Last Seen metrics with alerts to build simple uptime monitoring. If the value returns -1, no matching event has ever been received.

Alerts

You can set up alerts on any metric to be notified when a value goes above, below, or equals a threshold. Configure the alert operator, threshold value, and notification frequency (daily or once) in the metric settings.

Formulas

Formula metrics let you create calculated values by combining other metrics using mathematical expressions.

Syntax

Formulas reference other metrics by their slug (the URL-friendly version of the metric name). You can use standard mathematical operators:

Operator Description
+ Addition
- Subtraction
* Multiplication
/ Division (division by zero is handled safely)
( ) Parentheses for grouping

Examples

Annual Recurring Revenue

mrr * 12

Average Revenue Per User

mrr / total-users

Conversion Rate

(total-orders / page-views) * 100

Cart Abandonment Rate

(cart-additions - total-orders) / cart-additions * 100

Rules

  • Formulas cannot reference themselves (no self-referencing)
  • Circular dependencies are detected and prevented (e.g. metric A referencing metric B which references metric A)
  • Division by zero returns 0 rather than an error
  • You can validate formula syntax before saving via the API
Events

Events are the raw data that powers your metrics. Every time something happens in your application — a user signs up, makes a payment, views a page — you send an event to Status Blocks.

Event fields

Field Required Description
event
Required
The event name (e.g. user_signup, order_completed)
user_id Optional Enables user tracking and unique count metrics
user_email Optional Associates an email with the tracked user
user_name Optional Display name for the tracked user
value Optional Numeric value used by sum and average metrics (e.g. payment amount)
metadata Optional JSON object for filtering and segmentation

How events flow into metrics

Your App
API Event
Metric Recalculation
Dashboard Update

When an event is received, Status Blocks automatically recalculates all relevant metrics and updates your dashboard. If a user_id is included, the tracked user's profile is also updated.

Batch events

For bulk imports or high-throughput scenarios, use the batch endpoint to send up to 100 events in a single request. See the API Reference for details.

Viewing events

You can browse all events for a project in the Events tab. Events are displayed in reverse chronological order and can be searched and filtered.

User Tracking

When you include a user_id in your events, Status Blocks automatically creates and maintains user profiles.

How it works

  • The first event with a new user_id automatically creates a tracked user
  • Subsequent events update the user's last seen timestamp
  • If you include user_email or user_name, the user profile is enriched with that information
  • Per-user metrics are automatically tracked, including total events and total revenue

User profiles

The Users tab in your project shows all tracked users. You can:

  • Browse and search users by ID or email
  • View individual user profiles with their complete event history
  • See per-user calculated metrics (total events, total revenue)
  • See when a user was first seen and last active
Tip: Always include a user_id in your events to unlock user tracking, unique count metrics, and per-user analytics.
Funnels

Funnels let you track how users progress through a series of steps, helping you identify where users drop off in key flows.

Setting up a funnel

Navigate to the Funnels tab in your project to create a new funnel. You'll need to define:

  • Funnel name: A descriptive name (e.g. "Signup to Payment")
  • Steps: Two or more events that represent stages in the flow (e.g. page_viewuser_signupsubscription_payment)
  • Conversion window: The maximum number of days a user has to complete the funnel (1–365 days)

Funnel analysis

Once a funnel is created, Status Blocks calculates the following for each step:

Metric Description
Users Number of users who reached this step
Conversion from start Percentage of users from the first step who reached this step
Conversion from previous Percentage of users from the previous step who reached this step
Drop-off Number and percentage of users who didn't proceed to the next step

Example funnel

Visit
1,000
Sign up
300 (30%)
Subscribe
80 (8%)
Teams

Teams let you collaborate with others on your projects. Every account belongs to a team, and all projects are owned by a team.

Roles

Role Permissions
Owner Full access. Manage billing, team members, and all projects. Only one owner per team.
Admin Manage projects and team members. Cannot manage billing or delete the team.
Member View and work with projects. Cannot manage team settings or members.

Inviting team members

Team owners and admins can invite new members from Settings → Team. Invitations are sent by email and expire after a set period. The number of team members allowed depends on your plan.

Managing your team

  • Change team name and billing email in Settings → Team
  • Change member roles or remove members
  • View pending invitations
Billing

Status Blocks offers a free plan and paid plans with increased limits and features. Payments are processed securely through Paddle.

Plans

See our pricing page for current plan details and limits. Plans differ in:

  • Number of projects
  • Number of team members
  • Events per month
  • Metrics per project
  • Data retention period
  • Features (integrations, advanced analytics, CSV export, custom domains)

Subscribing

Upgrade from Settings → Billing. Choose between monthly and yearly billing (yearly saves 20%). Payment is handled through a secure Paddle checkout overlay.

Cancelling

You can cancel your subscription at any time from Settings → Billing. When you cancel:

  • Your subscription enters a grace period until the end of the current billing cycle
  • You retain access to all paid features during the grace period
  • You can resume your subscription at any time during the grace period
  • After the grace period, your account reverts to the free plan

Ready to get started?

Create your free account and start tracking in minutes.