Guide

Alerts & Usage Limits

2Signal tracks usage per organization per month. When you approach your plan limits, email alerts notify the organization owner so you can upgrade or adjust before ingestion is blocked.

What Gets Tracked

MetricDescriptionCounted When
Trace countNumber of traces ingestedTrace is written to the database
Span countNumber of spans ingestedSpan is written to the database
Eval run countNumber of evaluator executionsEach evaluator scores a trace/span

Usage is stored per-project per-month in UsageRecord entries (format: 2026-03). Counters are incremented atomically to prevent double-counting.

Plan Limits

MetricFreeProGrowthTeamEnterprise
Traces / month10,00050,000150,000500,000Unlimited
LLM evals / month5005,00015,00050,000Unlimited
Data retention7 days30 days60 days90 daysUnlimited
Seats13UnlimitedUnlimitedUnlimited
Rate limit100 req/s1,000 req/s1,000 req/s1,000 req/s1,000 req/s
Price / monthFree$29$79$199Custom

Alert Thresholds

Email alerts are sent to the organization owner at two thresholds:

ThresholdWhat Happens
80%Warning email sent. Ingestion continues normally. You have time to upgrade or reduce usage.
100%Limit reached email sent. On the Free plan, further trace ingestion is blocked until the next billing period. Pro, Growth, and Team plans support overages at per-trace and per-eval rates.

Each alert fires once per month per threshold. You won't receive duplicate 80% warnings. Alerts are tracked in the UsageAlert table to prevent re-sending.

Viewing Usage

Dashboard

Dashboard → Usage shows:

  • Current month usage across all projects
  • Per-project breakdown of traces, spans, and eval runs
  • Historical usage charts (up to 24 months)
  • Percentage of plan limit consumed

CLI

# Current month usage
2signal usage

# Historical usage
2signal usage --months 6

# Per-project usage
2signal usage --project support-agent-prod

TUI

Navigate to the Usage screen to see real-time counters and monthly trends.

How Usage Resets

Usage counters reset at the start of each calendar month (UTC). The month is tracked as a string like 2026-03. New UsageRecord entries are created automatically on the first ingestion of each month.

Reducing Usage

  • Sample traces in development — not every dev run needs to be traced
  • Use enabled=False in the SDK — disable tracing in unit tests
  • Consolidate projects — usage is per-org, but fewer projects means less overhead
  • Optimize evaluators — disable evaluators you aren't actively using. Each enabled evaluator runs on every trace, consuming eval quota.
  • Use deterministic evals first — Contains, Regex, JSON Schema, Latency, and Cost are free (no LLM calls). Reserve LLM Judge for semantic quality checks.

Data Retention

A daily cleanup worker deletes traces and spans older than your plan's retention period. Scores associated with deleted traces are also removed.

PlanRetention
Free7 days
Pro30 days
Growth60 days
Team90 days
EnterpriseUnlimited

If you need longer retention, upgrade your plan before the data is deleted — retention cleanup is irreversible.

Upgrading Your Plan

Upgrade from Dashboard → Settings → Billing → Upgrade. This redirects to Stripe Checkout. Plan changes take effect immediately — your new limits are applied as soon as the subscription is active.


Alert Rules

Beyond usage alerts, 2Signal supports configurable alert rules that fire when quality or performance metrics cross thresholds. Alert rules are checked automatically after evaluations complete on each trace.

Supported Metrics

MetricDescriptionExample
EVAL_PASS_RATEPercentage of traces passing a specific evaluatorAlert when pass rate drops below 80%
EVAL_SCORE_AVGAverage score for a specific evaluatorAlert when avg score drops below 0.7
ERROR_RATEPercentage of traces with ERROR statusAlert when error rate exceeds 5%
P95_LATENCY95th percentile trace durationAlert when P95 latency exceeds 10 seconds
TRACE_COST_AVGAverage cost per traceAlert when avg cost exceeds $0.50
EVAL_SCORE_DRIFTDrift magnitude for evaluator scoresAlert when drift magnitude exceeds 0.5
PII_LEAK_RATEPercentage of traces with PII detectedAlert when PII leak rate exceeds 1%
BIAS_SCORE_AVGAverage bias detection scoreAlert when bias score exceeds 0.1
SLA_BREACH_RATEPercentage of traces breaching SLAAlert when SLA breach rate exceeds 5%
WORKFLOW_DEVIATION_RATEPercentage of traces deviating from workflowAlert when deviation rate exceeds 10%

Delivery Channels

ChannelDescriptionConfiguration
EMAILEmail notification via ResendRecipient email address
SLACKSlack message via incoming webhookSlack webhook URL
WEBHOOKHTTP POST to a custom URLWebhook URL + optional headers

Creating an Alert Rule

In the dashboard, go to your project settings and configure alert rules. Each rule defines:

  • Metric — which metric to monitor
  • Evaluator name — for eval-specific metrics (EVAL_PASS_RATE, EVAL_SCORE_AVG)
  • Operatorgt (greater than) or lt (less than)
  • Threshold — the value that triggers the alert
  • Window — time window in minutes to aggregate the metric over
  • Cooldown — minimum minutes between repeated alerts to prevent alert storms
  • Channel & destination — where to send the notification

Alert Lifecycle

  1. A trace is ingested and evaluators run
  2. After evaluation completes, the alert-checker worker evaluates all enabled alert rules for the project
  3. If a metric crosses its threshold within the configured time window, an AlertEvent is created
  4. The notification is delivered to the configured channel
  5. The cooldown period prevents the same rule from firing again too soon

Alert events are logged with delivery status, so you can review alert history and troubleshoot delivery failures in the dashboard.

Have questions? Join our community!

Connect with other developers and the 2Signal team.

Join Discord