Sume team usage: totals for all members, event rows for Admins
On a Sume team workspace every role sees spend totals and the per-member table, but only an Admin reads other members' individual usage event rows.

On a Sume team workspace, all roles can see team spend totals and the per-member breakdown, because the wallet is pooled. Only an Admin, through the usage.read_all capability, can open other members' individual usage event rows: model, job id, tokens and metadata. Creators and Members see their own events.
Why it is split
The capability comment in capabilities.ts gives the reason. Per-member spend totals are team information when everyone draws from one balance. The event log is the sensitive part, since it carries models, job ids and token counts. So usage.read_all is a separate capability, not folded into billing.manage. The billing role is collapsed to Member today, and a finance-only role has not shipped.
What each role sees
| Role | Team totals | Member table | Own event rows | Other members' event rows |
|---|---|---|---|---|
| Admin | yes | yes | yes | yes |
| Creator | yes | yes | yes | no |
| Member | yes | yes | yes | no |
Where attribution comes from
Usage rows keep the acting member as the owner and the organization as the workspace. The wallet itself sits at a sentinel owner equal to the organization id. A job run by a teammate therefore shows that teammate in the ledger while the pooled balance pays. The team Usage page groups by member, and totals use every member's rows.
Two known limits
The channel hints on the team page come only from the viewer's own jobs, because the job list is still owner-scoped. For other members, older rows written before reservation channel metadata existed fall back to other. Also, spend caps and an audit-log UI are listed as later phases, so there is no per-member cap to configure today.
What to do
For a monthly review, an Admin reads the member table, then opens event rows for anyone whose spend stands out. If a producer needs to audit their own spend, their own rows are always visible. For API-level attribution across keys, use the key-level usage grouping rather than the team page.
Funding and concurrency context
Because the wallet is one pool, a single producer's heavy week draws down everyone's balance. Admin top-ups are the only way to refill it, and an unfunded wallet fails closed instead of using personal money. Organization workspaces also get a default generation concurrency of 10, rather than the free-tier limit, and the team's own subscription is read for the plan so admission and rate-limit tiers agree even though keys authenticate as the member who minted them.
If you need the numbers in a spreadsheet, pull them from the usage API per key and per day instead of copying the page, then join with the member table by hand. Keep the Admin who reads event rows to a minimum, because those rows carry model names and job ids that producers may consider part of their working notes.
Related posts
More in Pricing
- Sume video prices round up to the cent: 3 s of Wan 480p is $0.19
Sume bills list x 1.25 and rounds up to the next cent. Three seconds of Wan 3.0 at 480p is 18.75 cents, so $0.19. A table for short Wan and Omni clips.
- Video upscale at $0.009 per second vs paying for a 1080p generation
Sume's video upscale is $0.009 per second with a 30-second maximum, so a 10 s clip is $0.09. Wan 3.0 1080p costs $2.50 for 10 s. Price table.
- Sume Videos page default: an 8 s 720p Auto clip costs 100 credits
The Sume Videos page opens on Auto, 16:9, 8 seconds, 720p with sound on. That prices at $1.00, shown as 100 credits. Costs for 3 to 10 s at 720p and 1080p.
- Sume 403 stripe_topup_team_only: top-ups buy team credits
POST /api/billing/top-ups returns 403 stripe_topup_team_only. On-demand credits are bought into a team wallet, by an Admin, for $10 to $1000.
Written by Sume