Whiteboard Pricing and Quota
Billing dimensions, free quota, room/member limits, operation-log retention and rate limits.
Whiteboard billing combines room time with usage. Unit prices and free quotas are deployment configuration; this page defines the metering rules and defaults. The actual invoice always follows the deployment's billing configuration.
Billing dimensions
| Dimension | Metering | Notes |
|---|---|---|
| Room time | Minutes from room creation to close | Closed rooms stop billing; snapshot/replay reads are not billed |
| Writer members | Peak members holding writer / admin | Joins above the room limit are rejected |
| Operation writes | Strokes, images, viewport and scene operations | Undo/redo counts as one operation each |
| Snapshot export | JSON / SVG export count | Replay reads are metered per operation frame |
| Storage | Retained operation log and snapshots | Default is the latest 10 000 operations per room |
Free quota
Every project includes, by default:
- 60 minutes of whiteboard room time per month.
- 10 000 operation writes per month.
- 100 snapshot exports.
- 3 concurrent rooms.
When the free quota is exhausted the API returns 429 rate_limited (request rate) or a quota error; it never degrades silently.
Limits
| Item | Default | Over-limit behaviour |
|---|---|---|
| Writers per room | Room limit, 0 = unlimited | HTTP 409, code whiteboard_version_conflict |
| Operation log per room | 10 000 records | Oldest records stop participating in replay |
| Points per stroke | 4096 | 400 invalid_parameter |
| Scene name length | 64 characters | HTTP 400, code whiteboard_invalid_scene_path |
| Room token lifetime | Caller-chosen, 0 = no expiry | 401 token_expired after expiry |
| Project request rate | Platform rate-limit configuration | 429 rate_limited, back off using retryAfterSeconds |
Invoice rules
- Minutes are rounded up per UTC calendar minute.
- Concurrent writers in the same room are metered at peak; room time is not double-counted.
- The free quota resets per project per calendar month.
- Unit prices and currency come from the deployment's billing configuration; the console billing page shows the actual configuration.