// Engineering Log

n8n and backend services: Part 3 — Firebase

Published on 2026-09-22

// Fast route

This article belongs to the topic Python and automation.

Firebase — Google’s platform for mobile and web applications. Unlike Supabase, it is built on document databases and runs entirely in Google Cloud infrastructure: the source code is closed, and you cannot install Firebase on your own server.

What Firebase consists of

  • Cloud Firestore — a document database: data is stored in documents, documents are grouped into collections, nested collections are possible.
  • Realtime Database — an older database: one large JSON tree with minimal sync latency.
  • Authentication — user registration and sign-in by email, phone, or through external providers.
  • Cloud Functions — server-side functions that run on database events, on HTTP requests, or on a schedule.
  • Cloud Storage — file storage.
  • Hosting — hosting for static sites and single-page applications.

Client libraries for Android, iOS, and web receive data changes immediately, without polling. That is why Firebase is popular in mobile development.

Pricing and limits

Firebase has two plans: the free Spark and Blaze with pay-as-you-go billing. Free Cloud Firestore limits in the Standard edition are 50,000 reads, 20,000 writes, and 20,000 deletes of documents per day, 1 GiB of data and 10 GiB of outbound traffic per month.

Cloud Functions are available only on the Blaze plan, which requires a Google Cloud billing account. This is important for automation: a function that notifies n8n of a document change is not available on the free plan.

Firebase and Russian projects

Since March 2022 Google Cloud does not accept new customers from Russia, and payments from Russia are suspended. A billing account for the Blaze plan cannot be created for a Russian company. In addition, from July 1, 2025, the primary collection of personal data of Russian citizens must be carried out in databases located in Russia, while Firebase hosts data abroad.

Therefore, Firebase is not suitable for a new Russian project that handles user data. The analysis below is useful for projects targeting an international audience and for those who already use Firebase and connect it to n8n.

Firebase nodes in n8n

There is no node named “Firebase” in n8n. There are two separate nodes for the two databases.

Google Cloud Firestore works with documents and collections:

  • create a document;
  • create or update a document;
  • delete a document;
  • get a document;
  • get all documents in a collection;
  • run a query against documents;
  • list root collections.

Credentials — standard Google credentials in n8n: sign in via OAuth2 or a service account.

Google Cloud Realtime Database performs five operations: write data, delete data, get data, push an item to a list, and update an item. Its credentials are separate.

There is no Authentication node in n8n. You can create a user, disable them, or change data via an HTTP request to the Firebase Authentication REST API or via a Cloud Function that n8n calls by HTTP.

How Firebase notifies n8n of changes

Firestore cannot send webhooks by itself. There are two options.

  • Cloud Function on a document event. A function is triggered when a document is created or changed and sends a POST request to an n8n Webhook node URL. This method is fast but requires the Blaze plan.
  • Scheduled polling. A Schedule Trigger runs every few minutes and queries Firestore: for example, documents with an updatedAt field later than the last run time. This works on the free plan, but every read document counts against the read limit, so plan the interval and query size in advance.

Example workflows

Delivery status from a logistics company. Webhook receives a carrier notification → Google Cloud Firestore node creates or updates the order document → message to the customer. Use the order number as the document ID so that a repeated notification updates the same document rather than creating a new one.

Customer record from CRM. CRM trigger on a new deal → Firestore creates a document in the customers collection → HTTP request to Firebase Authentication creates an account → email with a link to set a password.

Nightly export. Schedule Trigger at 03:00 → query Firestore for documents from the day → write to a table or storage for reports. Firestore cannot join collections and compute aggregates like SQL, so reports are more convenient to build on exported data.

When Firebase is appropriate

  • A mobile app for an international audience where instant data synchronization between devices is important.
  • A project already running on Firebase that needs to be connected to other systems.
  • Data fits well into documents and does not require complex relations between tables.

If you need table joins, transactions across many records, standard data export tools, or hosting in Russia, Supabase or Appwrite on your own server are more suitable.

Common mistakes

  • Polling once a minute on the free plan. The read limit runs out faster than it seems: each request reads all matching documents.
  • Service account with project owner permissions. Create a separate service account for n8n with minimal roles and store the key only in n8n credentials.
  • Document IDs are generated randomly on each call. A repeated webhook creates a duplicate; use a stable identifier from the source system.
  • Relying on Cloud Functions without the Blaze plan. You cannot run an architecture that depends on functions on the free plan.

// Similar task

If you are dealing with something similar

This article belongs to one of the main working topics. You can keep reading on the topic, go to the homepage to understand what I do, or open the service pages directly.

Article topic

Python and automation

Bots, integrations, internal services, process automation, and workflows.

Typical tasks behind this topic

  • Build a bot, integration, or internal tool
  • Remove manual routine with Python and APIs
  • Connect services and automate the full workflow

// Next step

If you need help with this topic, not just another article, it is better to go straight to the service page. The homepage and topic collection stay available as secondary routes.

Open services

// Reviews

Related reviews

// Contact

Need help?

Get in touch with me and I'll help solve the problem

I reply within one business day (03:00-13:00 GMT)

Или оставьте заявку здесь:

Confirm that you are not a bot.

Write and get a quick reply