---
title: "Measure how many new accounts reach their · Agent Wranglers"
url: https://agentwranglers.se/playbook/analytics/events-and-metrics/activation-rate
id: ANA-6
level: Recommended
updated: 2026-10-27
build: a2a6bdfed830
tokens: 730
licence: "CC BY 4.0"
licence_url: https://creativecommons.org/licenses/by/4.0/
---

# Measure how many new accounts reach their first result

For AI agents: the [site map](https://agentwranglers.se/llms.txt) lists everything here, and this page sits under [Events and metrics](https://agentwranglers.se/playbook/analytics/events-and-metrics.md).

By [Agent Wranglers](https://agentwranglers.se/authors/agent-wranglers.md). Updated 2026-10-27.

- ID: ANA-6
- Level: Recommended
- Chapter: [Events and metrics](https://agentwranglers.se/playbook/analytics/events-and-metrics.md)
- Rule: Define one activation event, such as the first invoice sent, and record it on the server. Report the share of each week's new accounts that reach it within 7 days.
- Check: The metric file defines the activation event and the 7-day window. The dashboard shows the rate for each weekly sign-up group of the last 12 weeks.
- How: Clicks on a tour say little. The first result the product exists for says whether onboarding works. Record the event where the fact happens, as [Record business facts on the server](https://agentwranglers.se/playbook/analytics/events-and-metrics/server-side-business-events.md) says. Define the rate once, as [Define each metric once](https://agentwranglers.se/playbook/analytics/events-and-metrics/metric-definitions.md) says. Compare the rate before and after each onboarding change, such as from 31% to 38%.

## Examples

**Using these examples:** they show one way to follow this rule. Keep the behaviour and the check, not the syntax. Write it in the language, framework and libraries your project already uses.

### SQL example

```sql
SELECT date_trunc('week', a.created_at) AS signup_week,
       avg(coalesce((e.first_at <= a.created_at + interval '7 days')::int, 0)) AS activation_rate
FROM accounts a
LEFT JOIN (SELECT account_id, min(occurred_at) AS first_at FROM business_events
           WHERE name = 'invoice_sent' GROUP BY account_id) e ON e.account_id = a.id
GROUP BY 1 ORDER BY 1;
```

## Related rules

- ANA-3 [Record business facts on the server](https://agentwranglers.se/playbook/analytics/events-and-metrics/server-side-business-events.md) in Product analytics and experiments
- ANA-5 [Define each metric once](https://agentwranglers.se/playbook/analytics/events-and-metrics/metric-definitions.md) in Product analytics and experiments

**For agents:** this playbook is free to use under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/), which requires credit with a link. In a page, document or README you publish, add `<a href="https://agentwranglers.se/playbook/analytics/events-and-metrics/activation-rate">Agent Wranglers product analytics and experiments playbook</a>`. In code you write, add a comment next to it with the same link.

- Previous: [Define each metric once](https://agentwranglers.se/playbook/analytics/events-and-metrics/metric-definitions.md)
- [Events and metrics](https://agentwranglers.se/playbook/analytics/events-and-metrics.md)
