Is Cloud Functions in Firebase Free or Not (Cloud Functions deployment requires the pay-as-you-go (Blaze) billing plan)

When i make my first deploy function I can't deploying Because I have Error Asks me to make Upgrade to my account to Blaze I need to Know Can i deploy Function when i use free account??

Output:

i  deploying functions
i  functions: ensuring required API cloudfunctions.googleapis.com is enabled...
i  functions: ensuring required API cloudbuild.googleapis.com is enabled...
!  functions: missing required API cloudbuild.googleapis.com. Enabling now...
+  functions: required API cloudfunctions.googleapis.com is enabled

Error: Cloud Functions deployment requires the pay-as-you-go (Blaze) billing plan. To upgrade your project, visit the following URL:

https://console.firebase.google.com/project/institute-for-admin/usage/details

For additional information about this requirement, see Firebase FAQs:

https://firebase.google.com/support/faq#functions-runtime

As the message says, you can't deploy functions on the Spark free tier, if you target nodejs 10. Read the link to the FAQ:

Why will I need a billing account to use the Node.js 10 runtime for Cloud Functions for Firebase?

Because of updates to its underlying architecture planned for August 17, 2020, Cloud Functions for Firebase will rely on some additional paid Google services: Cloud Build, Container Registry, and Cloud Storage. These architecture updates will apply for functions deployed to the Node.js 10 runtime. Usage of these services will be billed in addition to existing pricing.

In the new architecture, Cloud Build supports the deployment of functions. You'll be billed only for the computing time required to build a function's runtime container.

Cloud Storage, interoperating with Google Container Registry, will provide storage space for the containers in which functions run. You'll be billed for each container required to deploy a function. If you're currently using Cloud Functions within free usage limits, you may notice new, small charges for each container stored— for example, 1GB of storage is billed at $0.026 per month.

To understand more about how your bill might change, please review the following

  • Cloud Functions pricing: existing free tier is unchanged.
  • Cloud Build pricing: Cloud Build provides for a free tier.
  • Container Registry pricing.

If you want to target node 8, that might still work. But it's been deprecated, and your functions will eventually stop working. You would still have to migrate them to node 10 in that case, and provide a billing account.

Cloud Functions still has a monthly free allowance that's documented in the pricing page. But you will have to provide a credit card and be on a billing plan in order to use it. You will be responsible for paying for any monthly overage.


Currently, the firebase is using node version 10 for cloud functions which requires you to pay (pay as you go).

You can change the node from 10 to 8 (to use for free of cost) in functions/package.json

"engines": {
    "node": "8". // changed from 10 to 8
  },

However, this will be soon deprecated. This is what the firebase website says:

Node.js 8 has been deprecated. Starting Feb 15, 2021, we'll no longer support new deploys or updates of Node.js 8 functions. Starting Mar 15, 2021, we'll no longer support executions of existing Node.js 8 functions.

https://firebase.google.com/support/faq?authuser=0#expandable-10-label

EDIT

This might be a legacy. Please check the latest comments for an updated policy.


Just to clear confusion here

Firebase seems to close the cloud functions for spark plan. So, I thought what if firebase is planning to take away the free plan features one by one.

Here is the answer from their FAQ page.

Does this change to Cloud Functions mean the Firebase free plan (Spark) is going away?

No. This change will not affect the other Firebase products. The Spark plan is going to be unavailable for Cloud Functions after March 15, 2021.


As of June 8, 2020 the answer is no it is not free anymore It used to be an option to set the engine to a legacy node 8 but as firebase states

Node.js 8 (deprecated on June 8, 2020) Deployment of functions to the Node.js 8 runtime was disabled in the Firebase CLI on December 15, 2020. Execution of already-deployed functions will stop at some point in the future; if you have deployed functions to the Node.js 8 runtime, we recommend that you upgrade to the Node.js 14 runtime.

And therefore it is no longer an option