Precios

En este documento se explican en detalle los precios de Firestore. También se explica cómo limitar y supervisar tus gastos en Firestore.

Si pagas en una moneda distinta del dólar estadounidense, se aplican los precios que aparecen en tu moneda en los SKU de Cloud Platform.

Descripción general de los precios

Cuando usas Firestore, se te cobra por lo siguiente:

  • La cantidad de operaciones de lectura, escritura y eliminación que ejecutas
  • La cantidad de almacenamiento que usa tu base de datos, incluidos los gastos de funcionamiento de metadatos y de índices
  • La cantidad de ancho de banda de red que usas

El uso de almacenamiento y de ancho de banda se calcula en gigabytes (GiB), con la equivalencia de 1 GiB = 230 bytes. Todos los cargos se aplican por día.

Las siguientes secciones muestran detalles sobre los cargos por el uso de Firestore.

Precios por ubicación

En la siguiente tabla, se indican los precios por las operaciones de lectura, escritura, eliminación y almacenamiento para cada ubicación de Firestore:

Si pagas en una moneda distinta del dólar estadounidense, se aplican los precios que aparecen en tu moneda en los SKU de Cloud Platform.

Operaciones de lectura, escritura y eliminación

Se te cobra por cada operación de lectura, escritura y eliminación de documentos que ejecutas con Firestore.

Los cargos por operaciones de lectura y eliminación son directos. En el caso de las de escritura, cada operación set o update cuenta como una sola.

Los cargos por operaciones de lectura tienen algunos matices que debes tener en cuenta. Las siguientes secciones explican estos matices en detalle.

Escucha los resultados de consultas

Firestore te permite escuchar los resultados de una consulta y obtener actualizaciones en tiempo real cuando estos resultados cambian.

Cuando escuchas para recibir los resultados de una consulta, se te cobra por una operación de lectura cada vez que se agrega o se actualiza un documento del conjunto de resultados. También se te cobra por una operación de lectura cuando un documento se quita del conjunto de resultados debido a que el documento cambió (por el contrario, no se te cobra por una operación de lectura cuando se borra un documento).

Además, si el objeto de escucha se desconecta por más de 30 minutos (por ejemplo, si el usuario se encuentra sin conexión), se te cobrará por las operaciones de lectura como si hubieses enviado una consulta totalmente nueva.

Administra conjuntos de datos de gran tamaño

Firestore tiene varias características para ayudarte a administrar consultas que muestran una gran cantidad de resultados:

  • Cursores, que te permiten reanudar una consulta que se ejecuta por mucho tiempo
  • Tokens de página, que te permiten paginar los resultados de la consulta
  • Límites, que especifican cuántos resultados se recuperarán
  • Desfases, que te permiten omitir una cantidad fija de documentos

No existen costos adicionales por usar cursores, tokens de página ni límites. De hecho, estas características pueden ayudarte a ahorrar dinero, puesto que solo se leen los documentos que realmente necesitas.

Sin embargo, cuando envías una consulta que incluye un desfase, se te cobra una operación de lectura por cada documento omitido. Por ejemplo, si tu consulta usa un desfase de 10 y la consulta muestra 1 documento como resultado, se te cobra por 11 operaciones de lectura. Debido a este costo adicional, debes usar cursores en lugar de desfases siempre que puedas.

Consultas distintas de las operaciones de lectura de documentos

En el caso de consultas distintas de las operaciones de lectura de documentos, como una solicitud de una lista de ID de colección, se te cobra por una operación de lectura de documento. Si necesitas más de una solicitud para recuperar el conjunto completo de resultados (por ejemplo, si usas la paginación), se te cobrará una vez por cada solicitud.

Cargo mínimo por consulta

Existe un cargo mínimo de una lectura de documento por cada consulta que ejecutas, incluso si no muestra resultados.

Reglas de seguridad de Firestore

En el caso de las bibliotecas cliente web y para dispositivos móviles, si tus reglas de seguridad de Firestore usan exists(), get() o getAfter() para leer uno o más documentos de tu base de datos, se te cobra por las operaciones de lectura adicionales, como se indica a continuación:

  • Se te cobra por las operaciones que son necesarias para evaluar tus reglas de seguridad de Firestore.

    Por ejemplo, si tus reglas hacen referencia a tres documentos, pero Firestore solo tiene que leer dos de esos documentos para evaluar tus reglas, se te cobrará por dos operaciones de lectura adicionales por los documentos dependientes.

    Solo se te cobra una operación de lectura por documento dependiente, incluso si tus reglas hacen referencia a ese documento más de una vez.

  • Se te cobra por la evaluación de reglas solo una vez por solicitud.

    Como resultado de esto, puede ser más económico leer varios documentos que leerlos uno a la vez, ya que para leer varios documentos se necesitan menos solicitudes.

  • Cuando escuchas los resultados de una consulta, se te cobra por la evaluación de reglas en todos los casos siguientes:

    • Cuando emites la consulta
    • Cada vez que se actualizan los resultados de la consulta
    • Cada vez que el dispositivo del usuario se encuentra sin conexión y vuelve a estar en línea
    • Cada vez que actualizas las reglas
    • Cada vez que actualizas los documentos dependientes en tus reglas

Tamaño de almacenamiento

Se te cobra por la cantidad de datos que almacenas en Firestore, incluidos los gastos generales de almacenamiento. Estos gastos incluyen los relacionados a los índices automáticos y compuestos, además de los metadatos. Cada documento almacenado en Firestore necesita los siguientes metadatos:

  • El ID de documento, incluidos el ID de colección y el nombre del documento
  • El nombre y valor de cada campo. Dado que Firestore no tiene esquema, el nombre de cada campo en un documento se debe almacenar con el valor del campo
  • Todos los índices compuestos y de un solo campo que hagan referencia al documento. Cada entrada de índice contiene el ID de colección, cualquier cantidad de valores de campo (según la definición del índice) y el nombre del documento

Obtén información sobre cómo se calcula el almacenamiento de Firestore en Cálculos de tamaño de almacenamiento. Puedes ver la cantidad de almacenamiento que usa tu base de datos en la página Detalles de cuota de App Engine en Cloud Console.

Ancho de banda de red

Se te cobra por el ancho de banda de red que usan tus solicitudes de Firestore, como se muestra en las siguientes secciones. El costo del ancho de banda de red de una solicitud de Firestore depende de la ubicación de la base de datos de Firestore y del tamaño y el destino de la respuesta.

Firestore calcula el tamaño de la respuesta en función de un mensaje serializado. La sobrecarga de protocolo, como la sobrecarga de SSL, no cuenta para el uso del ancho de banda de red. Las respuestas que rechazan tus reglas de seguridad de Firestore no cuentan para el uso del ancho de banda de red.

Si quieres saber cuánto ancho de banda de red usaste, utiliza Cloud Console para exportar tus datos de facturación a un archivo.

Precios generales de red

En el caso de las solicitudes que se originan dentro de Google Cloud Platform (por ejemplo, desde una aplicación que se ejecuta en Google Compute Engine), se te cobra de la siguiente forma:

Tipo de tráfico Precio
Entrada Gratis
Salida dentro de una región Gratis
Salida entre regiones de la misma multirregión Gratis
Salida entre regiones dentro de EE.UU. (por GiB) $0.01 (los primeros 10 GiB por mes son gratuitos)
Salida entre regiones, sin incluir el tráfico entre regiones de EE.UU. Tarifas de salida de Internet de Google Cloud Platform

Si pagas en una moneda distinta del dólar estadounidense, se aplican los precios que aparecen en tu moneda en los SKU de Cloud Platform.

Tarifas de salida de Internet

Se te cobrará por la salida de Internet para lo siguiente:

  • Solicitudes de Google Cloud entre regiones, sin incluir el tráfico entre las regiones de EE.UU.
  • Solicitudes desde fuera de Google Cloud (por ejemplo, desde el dispositivo móvil de un usuario)

Supervisa el uso

Puedes ver el uso diario que haces de Firestore en la página Cuotas de App Engine.

Ir a la página Cuotas

Administra los gastos

Para administrar tus gastos, establece presupuestos mensuales y alertas.

Presupuestos y alertas de Google Cloud

Google Cloud te permite configurar un presupuesto mensual para todos sus servicios. Úsalo a fin de supervisar tus costos generales en Google Cloud, incluidos los de ancho de banda de red para Firestore. Luego de establecerlo, puedes configurar alertas a fin de recibir notificaciones por correo electrónico a medida que el costo se acerca al presupuesto.

Los costos que cuentan para tu límite de gasto de App Engine también cuentan para tu presupuesto mensual.

Sigue estas instrucciones para configurar un presupuesto mensual y crear alertas en Cloud Console.

Límite de gasto de App Engine

App Engine te permite configurar un límite de gasto diario para este servicio y sus recursos asociados, incluidos Datastore y las bases de datos de Firestore. El límite es aproximado y debe ser lo suficientemente amplio para controlar incrementos repentinos en el uso de los recursos. Luego de exceder el límite de gasto diario, fallarán todas las operaciones de Firestore que no se encuentren dentro del límite de tu cuota gratuita.

Ejemplo de precios

Para ver cómo se acumulan los costos de facturación de Firestore en una app real de muestra, consulta el ejemplo de facturación de Firestore.