Stay organized with collections
Save and categorize content based on your preferences.
Relevant to Cloud Firestore Enterprise edition only.
This page describes the request quotas and limits for Cloud Firestore with MongoDB compatibility.
Free tier usage
Cloud Firestore with MongoDB compatibility offers a free tier that lets you get started with
Cloud Firestore with MongoDB compatibility at no cost. The free tier amounts are listed in the following
table.
Free tier amounts are applied daily and reset at midnight Pacific time.
The free tier applies to only one Cloud Firestore with MongoDB compatibility database per project.
The first database that is created in a project without a free tier database
will get the free tier. If the database with the free tier applied is deleted,
the next database created will receive the free tier.
Free tier
Quota
Stored data
1 GiB
Read units
50,000 per day
Write units
40,000 per day
Outbound data transfer
10 GiB per month
The following operations and features don't include free usage.
You must enable billing to use these features:
Managed deletes (TTL)
Backup data
Restore operations
For more information about how these features are billed, see
Storage pricing.
Standard limits
The following tables show the limits that apply to
Cloud Firestore with MongoDB compatibility. These are hard limits unless otherwise noted.
By default the quota is 0 because this feature is behind an allowlist.
You can request to increase the quota by filling in the CMEK access request form.
Collections, documents, and fields
Limit
Details
Constraints on collection names
Must be valid UTF-8 characters
Must be no longer than 1,500 bytes
Can't match the regular expression __.*__
Can't contain $
Can't be the empty string ("")
Can't contain the null character
Can't begin with `system.` and can't contain `.system.`.
Constraints on document IDs (_id)
Document _id (top-level field) must be an
ObjectId, String, or 64-bit integer. Other BSON types are not supported.
Must be no longer than 1,500 bytes
For String IDs:
Must be valid UTF-8 characters
Can't be the empty string ("")
Can't match the regular expression __.*__
For 64-bit integer IDs, 64-bit 0 (0L) is not supported.
Maximum size for a document
4 MiB
Constraints on field names
Must be valid UTF-8 characters
Can't be the empty string ("")
Can't match the regular expression __.*__
Maximum size of a field name
1,500 bytes
Maximum size of a field path
1,500 bytes
Maximum size of a field value
4 MiB - 89 bytes
Maximum depth of fields in a map or array
20
Map and array fields add one level to the overall depth of an object. For example, the following object has a total depth of three levels:
[[["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-08-25 UTC."],[],[],null,["\u003cbr /\u003e\n\n\n|--------------------------------------------------------|\n| *Relevant to Cloud Firestore Enterprise edition only.* |\n\n\u003cbr /\u003e\n\nThis page describes the request quotas and limits for Cloud Firestore with MongoDB compatibility.\n\nFree tier usage\n\nCloud Firestore with MongoDB compatibility offers a free tier that lets you get started with\nCloud Firestore with MongoDB compatibility at no cost. The free tier amounts are listed in the following\ntable.\n\nFree tier amounts are applied daily and reset at midnight Pacific time.\n\nThe free tier applies to only one Cloud Firestore with MongoDB compatibility database per project.\nThe first database that is created in a project without a free tier database\nwill get the free tier. If the database with the free tier applied is deleted,\nthe next database created will receive the free tier.\n\n\u003cbr /\u003e\n\n| Free tier | Quota |\n|------------------------|------------------|\n| Stored data | 1 GiB |\n| Read units | 50,000 per day |\n| Write units | 40,000 per day |\n| Outbound data transfer | 10 GiB per month |\n\n\u003cbr /\u003e\n\nThe following operations and features don't include free usage.\nYou must [enable billing](https://cloud.google.com/billing/docs/how-to/modify-project) to use these features:\n\n- Managed deletes (TTL)\n- Backup data\n- Restore operations\n\nFor more information about how these features are billed, see\n[Storage pricing](https://cloud.google.com/firestore/enterprise/pricing#storage-size#storage-size).\n\nStandard limits\n\nThe following tables show the limits that apply to\nCloud Firestore with MongoDB compatibility. These are hard limits unless otherwise noted.\n\nDatabases\n\n| Limit | Details |\n|--------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Maximum number of databases per project | 100 [Contact support](https://cloud.google.com/support-hub) to request an increase to this limit. |\n| Maximum number of [customer-managed encryption keys (CMEK) databases](/docs/firestore/enterprise/cmek) per project | 0 By default the quota is 0 because this feature is behind an allowlist. You can request to increase the quota by filling in [the CMEK access request form](https://docs.google.com/forms/d/e/1FAIpQLSfKs8wJf4IXu1NizvfyU2vT59JDbdPvkehMVZ2ab5l_aDLIIA/viewform?resourcekey=0-O15dlRFvA0JIDmh6VFUEcA). |\n\nCollections, documents, and fields\n\n| Limit | Details |\n|-------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Constraints on collection names | - Must be valid UTF-8 characters - Must be no longer than 1,500 bytes - Can't match the regular expression `__.*__` - Can't contain `$` - Can't be the empty string (`\"\"`) - Can't contain the null character - Can't begin with \\`system.\\` and can't contain \\`.system.\\`. |\n| Constraints on document IDs (`_id`) | - Document `_id` (top-level field) must be an ObjectId, String, or 64-bit integer. Other BSON types are not supported. - Must be no longer than 1,500 bytes - For String IDs: - Must be valid UTF-8 characters - Can't be the empty string (`\"\"`) - Can't match the regular expression `__.*__` - For 64-bit integer IDs, 64-bit 0 (0L) is not supported. |\n| Maximum size for a document | 4 MiB |\n| Constraints on field names | - Must be valid UTF-8 characters - Can't be the empty string (`\"\"`) - Can't match the regular expression `__.*__` |\n| Maximum size of a field name | 1,500 bytes |\n| Maximum size of a field path | 1,500 bytes |\n| Maximum size of a field value | 4 MiB - 89 bytes |\n| Maximum depth of fields in a map or array | 20 Map and array fields add one level to the overall depth of an object. For example, the following object has a total depth of three levels: ``` { nested_object: { #depth 1 nested_array: [ #depth 2 { foo: \"bar\" #depth 3 } ] } } ``` |\n\nReads, writes, and transactions\n\n| Limit | Details |\n|------------------------------|----------------------------------------------------|\n| Memory limit for a query | 128 MiB |\n| Time limit for a transaction | 270 seconds, with a 60-second idle expiration time |\n\nIndexes\n\n| Limit | Details |\n|--------------------------------------------------------|----------------------------------------------------------------------------------------------------|\n| Maximum number of indexes for a database | 1000 [Contact support](https://cloud.google.com/support-hub) to request an increase to this limit. |\n| Maximum number of index entries for each document | 40,000 |\n| Maximum number of fields in an index | 100 |\n| Maximum size of an index entry | 7.5 KiB |\n| Maximum sum of the sizes of a document's index entries | 8 MiB |\n\nTime to live (TTL)\n\n| Limit | Details |\n|-----------------------------------------------------|---------|\n| Maximum number of TTL configurations for a database | 500 |"]]