Platform

Manage Storage size usage


What you are charged for

You are charged for the total size of all assets in your buckets.

How charges are calculated

Storage size is charged by Gigabyte-Hours (GB-Hrs). 1 GB-Hr represents the use of 1 GB of storage for 1 hour. For example, storing 10 GB of data for 5 hours results in 50 GB-Hrs (10 GB × 5 hours).

Usage on your invoice

Usage is shown as "Storage Size GB-Hrs" on your invoice.

Pricing

$0.00002919 per GB-Hr ($0.021 per GB per month). You are only charged for usage exceeding your subscription plan's quota.

PlanQuota in GBOver-Usage per GBQuota in GB-HrsOver-Usage per GB-Hrs
Free1-744-
Pro100$0.02174,400$0.00002919
Team100$0.02174,400$0.00002919
EnterpriseCustomCustomCustomCustom

Billing examples

Within quota

The organization's Storage size usage is within the quota, so no charges for Storage size apply.

Line ItemUnitsCosts
Pro Plan1$25
Compute Hours Micro744 hours$10
Storage Size85 GB$0
Subtotal$35
Compute Credits-$10
Total$25

Exceeding quota

The organization's Storage size usage exceeds the quota by 257 GB, incurring charges for this additional usage.

Line ItemUnitsCosts
Pro Plan1$25
Compute Hours Micro744 hours$10
Storage Size357 GB$5.4
Subtotal$40.4
Compute Credits-$10
Total$30.4

View usage

Usage page

You can view Storage size usage on the organization's usage page. The page shows the usage of all projects by default. To view the usage for a specific project, select it from the dropdown. You can also select a different time period.

In the Storage size section, you can see how much storage your projects have used during the selected time period.

SQL Editor

Since we designed Storage to work as an integrated part of your Postgres database on Supabase, you can query information about your Storage objects in the storage schema.

List files larger than 5 MB:


_18
select
_18
name,
_18
bucket_id as bucket,
_18
case
_18
when (metadata->>'size')::int >= 1073741824 then
_18
((metadata->>'size')::int / 1073741824.0)::numeric(10, 2) || ' GB'
_18
when (metadata->>'size')::int >= 1048576 then
_18
((metadata->>'size')::int / 1048576.0)::numeric(10, 2) || ' MB'
_18
when (metadata->>'size')::int >= 1024 then
_18
((metadata->>'size')::int / 1024.0)::numeric(10, 2) || ' KB'
_18
else
_18
(metadata->>'size')::int || ' bytes'
_18
end as size
_18
from
_18
storage.objects
_18
where
_18
(metadata->>'size')::int > 1048576 * 5
_18
order by (metadata->>'size')::int desc

List buckets with their total size:


_10
select
_10
bucket_id,
_10
(sum((metadata->>'size')::int) / 1048576.0)::numeric(10, 2) as total_size_megabyte
_10
from
_10
storage.objects
_10
group by
_10
bucket_id
_10
order by
_10
total_size_megabyte desc;

Optimize usage