Documentation
Learn how to set up and get the most out of Status Blocks.
Get up and running with Status Blocks in just a few minutes. Here's what you need to do:
Create your account
Sign up for a free account. No credit card required — the free plan gives you everything you need to get started.
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.
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.
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.
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 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.
Project limits
The number of projects you can create depends on your plan. You can see your current limits in your billing settings.
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 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.
-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.
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 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 |
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
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.
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_idautomatically creates a tracked user - Subsequent events update the user's last seen timestamp
- If you include
user_emailoruser_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
user_id in your events to unlock user tracking, unique count metrics, and per-user analytics.
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_view→user_signup→subscription_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
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
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.