Skip to main content

Database usage

Plans include a number of database records shared by all your projects (Tier 4: 2,000,000). This endpoint returns how many you use and where.

GET /User/DatabaseUsage​

{
"Success": true,
"Data": {
"Used": 184230,
"Limit": 2000000,
"Unlimited": false,
"Remaining": 1815770,
"UsedPercent": 9.21,
"CountedAt": "2026-11-10T09:30:12Z",
"Projects": [
{ "ProjectID": 12345, "Name": "Workspaces", "TableRecords": 183900, "SiteUsers": 330, "Total": 184230 }
]
}
}

The number is counted live and cached for 10 minutes, so calling it more often returns the same CountedAt.

What counts​

  • All your projects together, against one account-wide limit.
  • Rows currently in your tables. Deleted rows no longer count.
  • Registered users of each site (SiteUsers) count as records too.
  • Not counted: EZsite's own system tables, and projects that use your own external database (Supabase, MySQL, PostgreSQL and others). Rows there are limited only by that database.

At the limit​

When the account reaches its limit, new records can't be saved: inserts fail with a message saying the plan limit was reached, while reading, updating and deleting keep working. The account owner gets an email when this happens.

The limit check uses a count that refreshes about every 12 hours (and whenever you call this endpoint), so the cut-off may come a little after the exact number. To avoid surprises, alert yourself from this endpoint before you get close, for example at 80%.

To raise the limit, upgrade the plan or contact support about larger capacity. Moving a large, fast-growing tenant to its own external database also takes its rows out of the count.

MCP tool​

ezsite_database_usage returns the same data to AI agents through the EZsite MCP server.