If you are building server-rendered Angular or Next.js apps, check out next-generationFirebase App Hosting,a full-stack solution for modern web frameworks.
Learn about usage levels, quotas, and pricing for Hosting
Stay organized with collectionsSave and categorize content based on your preferences.
The pricing forFirebase Hostingis based upon your project's usage of the
following:
Hostingstorage(GB) — The amount of storage space
required to store the content of yourHostingsites (your static files and
your configuration files).
Data transfer(GB/month) — The amount of data
transferred to end users from our CDN. EveryHostingsite is automatically
backed by our global CDN at no charge.
YourHostingquota is project-level, not site-level or channel-level. You
can upgrade your project to the Blaze billing plan to unlock additional paid
storage and data transfer levels. Learn more aboutquotas and pricing forFirebase Hosting.
We recommend setting upbudget alertsfor your project in theGoogle Cloudconsole.
Monitor both yourHostingstorage level and data transfer level in theFirebaseconsole:
Visit theUsagedashboard in theHostingsection of the console. You can view the usage levels for different billing periods as well as for all
yourHostingsites or for each site.
When you deploy new content to your site, you create a "release" that points to
a specific version of content and configuration for your site. The files
associated with each release (both new releases and any retained previous
releases) are stored by Firebase. These files make up your project'sHostingstorage usage level.
ThisHostingstorage is independent and unrelated to any other storage for
your Firebase project (likeCloud Storage for Firebaseor database storage).
Note thatHostinghas a maximum size limit of 2 GB for
individual files.
Quota forHostingstorage
Storage for yourHostingcontent is at no cost up to
10 GB.
If you arenoton the Blaze plan, and you reach the
10 GB limit of no-costHostingstorage, you won't be
able to deploy new content to your sites. You'll need todelete older releasesorupgrade to the Blaze plan.
If you are on the Blaze plan, and you reach the 10 GB
limit of no-costHostingstorage, you'll be billed $0.026 for each additional
GB ofHostingstorage.
Control usage ofHostingstorage
To control yourHostingstorage usage, here are some things you can do:
Store larger files usingCloud Storage for Firebase, which
offers a maximum size limit in the terabyte range for individual objects.
UnderstandHostingdata transfer
WhenHostingserves one of your site's resources, data transfers from our
CDN to your end user. The requested resource might already be available in our
CDN cache (a cache hit) or it might need to come from theHostingbackend (a
cache miss). If the requested content can be cached in the CDN, it will be. Both
cache hits and misses count toward your project'sHostingdata transfer
usage.
Quota forHostingdata transfer
EveryHostingsite is automatically backed by our global CDN at no charge.
Data transfer from the CDN to your end users is at no cost up to
10 GB/month.
If you arenoton the Blaze plan, and you reach the
10 GB/month limit of no-cost data transfer, we
offer a short grace period but then your sites will be disabled. Your sites
will remain disabled until the start of the next month because data transfer
billing is based onmonthlyusage levels. You can reenable your sites
immediately byupgrading to the
Blaze plan.
If you are on the Blaze plan, and you reach the
10 GB/month limit of no-cost data transfer, you'll be
billed $0.15 for each additional GB of data transferred that month.
Control usage ofHostingdata transfer
To control yourHostingdata transfer usage, here are some things you can
do:
Fine-tune the client-side caching of your content so that browsers don't need
to request a resource from the CDN. Learn more about caching in theweb developer documentation.
Avoid loading images and videos that you don't actually need to display.
Create service workers to handle certain requests. If you load Firebase SDKs via reservedHostingURLs, make sure to read
important information about thereserved namespace for these URLs.
Here are some resources to help you set up service workers, especially with a
PWA:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["\u003cbr /\u003e\n\nThe pricing for Firebase Hosting is based upon your project's usage of the\nfollowing:\n\n- [Hosting storage](#hosting-storage) (GB) --- The amount of storage space\n required to store the content of your Hosting sites (your static files and\n your configuration files).\n\n- [Data transfer](#hosting-data-transfer) (GB/month) --- The amount of data\n transferred to end users from our CDN. Every Hosting site is automatically\n backed by our global CDN at no charge.\n\nYour Hosting quota is project-level, not site-level or channel-level. You\ncan upgrade your project to the Blaze billing plan to unlock additional paid\nstorage and data transfer levels. Learn more about\n[quotas and pricing for Firebase Hosting](/pricing#hosting).\n\nWe recommend setting up\n[budget alerts](/docs/projects/billing/avoid-surprise-bills#set-up-budget-alert-emails)\nfor your project in the Google Cloud console.\n\nMonitor both your Hosting storage level and data transfer level in the\nFirebase console:\n\n- Visit the [*Usage*](//console.firebase.google.com/project/_/hosting/usage)\n dashboard in the *Hosting* section of the console. \n\n You can view the usage levels for different billing periods as well as for all\n your Hosting sites or for each site.\n\n- Visit your project's\n [*Usage and billing* dashboard](//console.firebase.google.com/project/_/usage)\n in the console.\n\n| When your project is on the Blaze pricing plan, [**set up budget alerts**](/docs/projects/billing/avoid-surprise-bills#set-up-budget-alert-emails) using the console. You can use the [Blaze plan calculator](/pricing#blaze-calculator) to estimate your monthly costs.\n|\n| Be aware that **budget alerts do *not* cap your usage or\n| charges** --- they are *alerts* about your costs so that you can\n| take action, if needed. For example, you might consider\n| [using\n| budget notifications to programmatically disable Cloud Billing on a\n| project](https://cloud.google.com/billing/docs/how-to/disable-billing-with-notifications).\n\nUnderstand Hosting storage\n\nWhen you deploy new content to your site, you create a \"release\" that points to\na specific version of content and configuration for your site. The files\nassociated with each release (both new releases and any retained previous\nreleases) are stored by Firebase. These files make up your project's Hosting\nstorage usage level.\n\nThis Hosting storage is independent and unrelated to any other storage for\nyour Firebase project (like Cloud Storage for Firebase or database storage).\n\nNote that Hosting has a maximum size limit of 2 GB for\nindividual files.\n\nQuota for Hosting storage\n\nStorage for your Hosting content is at no cost up to\n10 GB.\n\n- If you are *not* on the Blaze plan, and you reach the\n 10 GB limit of no-cost Hosting storage, you won't be\n able to deploy new content to your sites. You'll need to\n [delete older releases](/docs/hosting/manage-hosting-resources#delete-release)\n or\n [upgrade to the Blaze plan](//console.firebase.google.com/project/_/overview?purchaseBillingPlan=metered).\n\n- If you are on the Blaze plan, and you reach the 10 GB\n limit of no-cost Hosting storage, you'll be billed $0.026 for each additional\n GB of Hosting storage.\n\nControl usage of Hosting storage\n\nTo control your Hosting storage usage, here are some things you can do:\n\n- [Set a limit](/docs/hosting/manage-hosting-resources#release-storage-settings)\n for the number of releases to keep.\n\n- [Manually delete](/docs/hosting/manage-hosting-resources#delete-release)\n specific releases.\n\n- Store larger files using [Cloud Storage for Firebase](/docs/storage), which\n offers a maximum size limit in the terabyte range for individual objects.\n\nUnderstand Hosting data transfer\n\nWhen Hosting serves one of your site's resources, data transfers from our\nCDN to your end user. The requested resource might already be available in our\nCDN cache (a cache hit) or it might need to come from the Hosting backend (a\ncache miss). If the requested content can be cached in the CDN, it will be. Both\ncache hits and misses count toward your project's Hosting data transfer\nusage.\n\nQuota for Hosting data transfer\n\nEvery Hosting site is automatically backed by our global CDN at no charge.\nData transfer from the CDN to your end users is at no cost up to\n10 GB/month.\n\n- If you are *not* on the Blaze plan, and you reach the\n 10 GB/month limit of no-cost data transfer, we\n offer a short grace period but then your sites will be disabled. Your sites\n will remain disabled until the start of the next month because data transfer\n billing is based on *monthly* usage levels. You can reenable your sites\n immediately by [upgrading to the\n Blaze plan](//console.firebase.google.com/project/_/overview?purchaseBillingPlan=metered).\n\n- If you are on the Blaze plan, and you reach the\n 10 GB/month limit of no-cost data transfer, you'll be\n billed $0.15 for each additional GB of data transferred that month.\n\nControl usage of Hosting data transfer\n\nTo control your Hosting data transfer usage, here are some things you can\ndo:\n\n- Fine-tune the client-side caching of your content so that browsers don't need\n to request a resource from the CDN. Learn more about caching in the\n [web developer documentation](//web.dev/http-cache/#cache-control).\n\n- Avoid loading images and videos that you don't actually need to display.\n\n- Create service workers to handle certain requests. \n\n If you load Firebase SDKs via reserved Hosting URLs, make sure to read\n important information about the\n [reserved namespace for these URLs](/docs/hosting/reserved-urls#reserved_urls_and_service_workers).\n\n Here are some resources to help you set up service workers, especially with a\n PWA:\n - Codelab: [Caching files with the service worker](//codelabs.developers.google.com/codelabs/pwa-caching-service-worker/index.html)\n\n - Documentation: [Service Worker Mindset](//web.dev/service-worker-mindset/#powerful-but-limited)"]]