APM — Actions Per Minute
Understanding the Actions Per Minute metric in the systemprompt.io Control Center
On this page
APM measures the rate of meaningful interactions between you and Claude Code per minute of active session time. It captures how quickly you and the AI iterate together — the tighter the feedback loop, the faster you converge on solutions.
Definition
Actions Per Minute is the total count of actions (tool executions plus prompts) divided by the session duration in minutes.
Formula:
APM = (tool_uses + prompts) / session_duration_minutes
What counts as an action
Every successful tool execution and every prompt you submit counts as one action:
- Tool executions: Read, Edit, Bash, Grep, Glob, Write, Agent — each successful invocation is one action
- Prompts: Every message you submit to Claude Code is one action
These are the building blocks of every session. A single prompt might trigger dozens of tool executions as Claude reads files, searches code, makes edits, and runs tests.
Data source
APM is deterministic — it is counted from actual hook events, not estimated or sampled.
tool_uses: Counted fromPostToolUsehook events fired on every successful tool executionprompts: Counted fromUserPromptSubmithook events fired each time you send a message- Duration: Calculated from
started_attoended_attimestamps onplugin_session_summaries
There is no AI inference or approximation involved. The number reflects exactly what happened in the session.
Interpretation ranges
| APM Range | Classification | What it means |
|---|---|---|
| < 2 | Passive / Waiting | Long pauses between interactions. You may be reading output, thinking, or doing work outside of Claude Code. |
| 2–5 | Moderate | Steady back-and-forth. Typical of thoughtful, deliberate sessions where you review output before continuing. |
| 5–15 | Active | Rapid iteration. You're moving quickly through tasks, with Claude executing multiple tools per prompt. |
| 15–30 | Intensive | Very fast-paced work. Common during large refactors, multi-file edits, or test-fix-test cycles. |
| 30+ | Extremely rapid | Burst activity. Often seen when Claude is autonomously executing chains of tool calls with minimal waiting. |
Why it matters
APM measures iteration speed. Faster APM means tighter feedback loops — you see results sooner, catch problems earlier, and make more course corrections per unit of time.
Higher APM does not inherently mean better outcomes. A session with APM of 3 where every action is deliberate and correct may be more productive than a session with APM of 25 where half the actions are retries. That's why EAPM exists as a companion metric.
However, consistently low APM may indicate bottlenecks: slow tool execution, unclear prompts that require extensive re-reading, or workflow patterns that could be streamlined.
The StarCraft analogy
Like APM in competitive real-time strategy games, this metric captures raw interaction speed. Professional StarCraft players average 200–400 APM because faster input means faster response to changing conditions. In AI-assisted development, the same principle applies — faster iteration means more opportunities to steer the AI toward the right solution.
Example
A 20-minute session where you submit 3 prompts and Claude executes 87 tools:
APM = (87 + 3) / 20 = 4.5 APM
This falls in the "moderate" range — a steady, productive session with Claude doing substantial autonomous work per prompt.