"Usage"
The **Usage** tab on each project charts daily activity per environment over the last 7, 30 or 90 days. It's for visibility only: there are no plans, limits or charges.
What's measured
| Metric | How it's counted |
|---|---|
| Requests | Every API request to the project: queries, mutations, function calls, data browser and dashboard requests, and libSQL pipeline calls. |
| Function executions | Function runs recorded in the environment's execution log, including failures. |
| Bandwidth | Request and response bodies passing through the Tether API. File downloads go straight to storage through signed URLs and aren't included, and neither is WebSocket traffic. |
| Storage | The environment's database (including its write-ahead log) plus completed file uploads. Measured hourly; the chart shows the latest measurement for each day. |
Days are UTC. Requests and bandwidth are written every minute, so the chart can lag by up to a minute; storage and executions for today are refreshed whenever the page loads.
Usage for a deleted environment stays visible while it's within the chosen range. Deleting a project deletes its usage history.
API reference
GET /api/v1/projects/{id}/usage?days=30
days is 1 to 90 (default 30). Anyone who can see the project can read its usage.
{
"from": "2026-09-19",
"to": "2026-10-18",
"totals": { "requests": 48210, "functionExecutions": 12044, "storageBytes": 5242880, "bandwidthBytes": 91423011 },
"environments": [
{
"name": "production",
"totals": { "requests": 45002, "functionExecutions": 11890, "storageBytes": 4194304, "bandwidthBytes": 88001200 },
"days": [
{ "date": "2026-10-18", "requests": 1602, "functionExecutions": 410, "storageBytes": 4194304, "bandwidthBytes": 3002111 }
]
}
]
}
In totals, storage is the latest measurement rather than a sum.