¿Qué es Firebase y cuál es su coste?
Conoce que es Firebase y aprende a estimar su coste anual

Hace pocos días un cliente me pidió una estimación de costes de Firebase, quería saberlo para gestionar ciertas decisiones de su empresa. Le dí la información de tablas de precios que siempre doy a mis clientes al presentarles Firebase como una opción de BackEnd, pero se sinceró y me llamó ayer para decirme que no entendía nada de la información dada por Google. Al principio lo vi raro, pero cuando la revisé... Me di cuenta que no era tan fácil de entender, así que Davide, si estás viendo este post, que seguro lo harás. ¡Esto es para ti! 

Introducción

Para poder estimar el coste de FireBase, necesitamos definir que es Firebase y:

  • Los criterios de coste de Firebase más importantes.

  • El trending de la empresa en cuestión para saber la afluencia media que puede tener la Web.

Firebase

Es la integración de todas las soluciones/servicios de Google para que una aplicación Web o Móvil pueda funcionar con Servicios Cloud, ejemplos de ellos pueden ser:

  • Manejo de notificaciones.

  • Live Messages.

  • Descarga y subida de archivos.

  • Hosting.

  • Testing Lab.

  • Reportes de errores.

  • Métricas de:

    • SEO.

    • Crashes.

    • Descargas por:

      • Región.

      • País.

      • Hora.

      • Mes.

  • Indexación Web.

  • Confirmación de registros y logins.

  • Etc.

Firebase Logo

 Suena muy bien todo esto, ¿pero que ventajas trae todo esto a nuestros proyectos?


Ventajas de Firebase

  • Facilidad de mantenimiento, ya que todo está en un solo lugar.

  • Analytics potentes:

    • Firebase Analytics proporciona una capacidad ilimitada para generar informes, hasta un total de 500 eventos que pueden ser definidos mediante el SDK de Firebase.

      • También permite la definición de audiencias personalizadas basándonos en:

        • Propiedades de los usuarios.

        • Datos de dispositivos.

        • Eventos personalizados.

        • Entre otras.

      • Estás audiencias pueden usarse para la configuración de notificaciones u otras funciones de Firebase.

Firebase Dashboard

Si se quiere realizar un análisis personalizado o combinar los datos con otras fuentes, se pueden vincular dichos datos de Analytics con BigQuery, esto posibilita realizar un análisis más a fondo, como la combinación de distintas fuentes de datos y consultar grandes conjuntos de datos.

Al tener todas las herramientas en un mismo lugar Google nos proporciona estadísticas mucho más completas y con toda la información necesaria para tomar decisiones como:

  • ¿Que funciones no tienen éxito?

  • ¿Que funciones necesitan un mayor cuidado debido a su porcentaje de crashes o errores?

  • ¿Que es lo que más usan nuestros usuarios?

  • Decisiones de Servidor

    • Pongamos un ejemplo:

      • El 35% del público está en España, 45% en China y los demás en diferentes partes del mundo.

        • Sería una buena decisión verificar que tipo de servidor tenemos. Si es un servidor VPS o un Azure/AWS/Google Cloud.

          • Para la primera elección, un VPS, tendrás que crear una réplica en el lugar de mayor afluencia como sería en este caso China si tu servidor está en España o viceversa.

          • Para la segunda decisión, tenemos buenas noticias, no tienes que hacer nada, estas soluciones ya hacen todo esto por ti. Esto refuerza lo increíble que es Firebase.

  • No hay que preocuparnos por ampliar o reducir nuestro servidor.

    • Imaginemos que somos una tienda de ropa, sabemos que por las "rebajas" hay 5 veces más afluencia en los meses de Junio-Agosto y Diciembre-Febrero que en todo el resto del año.

      • En un servidor convencional tendríamos 3 opciones:

        • Pagar todo el año el servidor con capacidad para 5 veces lo habitual.

          • Implicando un sobre-coste.

        • Pagar todo el año lo habitual y esos meses tener una web caída.

        • Pagar una migración cada medio año para que podamos soportar el cambio.

          • Otra vez... un sobre-coste innecesario.

      • En un servidor Azure, AWS o Google Cloud.

        • No habría que hacer nada, el servidor se adecúa de acuerdo a las exigencias del momento.

  • Interfaz cuidada.

    • Evitamos el desarrollo del Tech-Back-Office, ya que es proporcionado por Google.

  • Seguridad brindada por Google.

  • Administración de usuarios fácil.

    • Podemos invitar y seleccionar los roles de cada persona para que puedan gestionar todas las herramientas de Firebase, como solo unas pocas o una sola.

  • Develop Tools:

    • Bases de datos en tiempo real que permiten almacenar y sincronizar los

      datos en tiempo real.

      • Autenticación que gestiona el acceso a toda la infraestructura.

      • Hosting que suministra un alojamiento estático y seguro para la app.

      • Almacenamiento construido para desarrolladores que necesitan almacenar y servir contenido como fotos y vídeos generados por los usuarios.

      • Cloud messaging que permite entregar de manera fiable mensajes y notificaciones sin coste.

      • Configuración remota que permite cambiar el comportamiento y la apariencia sin una publicación ni actualización de una actualización de la app.

      • Test Lab para Android que permite testear la app en dispositivos virtuales alojados en un centro de datos de Google.

      • Crash Reporting que suministra información accionable para ayudar a diagnosticar y solucionar problemas en la app.

    • Grow Tools:

      • Enlaces dinámicos que proporcionan la mejor experiencia en diferentes plataformas y motivan al usuario a instalar la app si todavía no la tienen.

      • Permite a los usuarios enviar invitaciones por email o SMS y compartir la app directamente con sus contactos.

      • AdWords posibilita alcanzar clientes potenciales con campañas online.

      • Notificaciones que, desde la consola de Firebase, se pueden diseñar y enviar a los usuarios para re-enganchar a los que se han “olvidado” de la app. Más adelante se puede analizar el impacto que han tenido.

      • Indexación de la app para que los usuarios que van en busca de un contenido relacionado puedan ir directamente a consumir la app.

Ahora que entendemos mejor lo que es Firebase, vayamos a sus criterios de coste.


DAU

Gráfica DAU

Son los usuarios activos diarios, estos son los usuarios que usan la aplicación de manera activa en un día específico y suele por media corresponder al 10% de usuario totales.


Almacenamiento de datos

Almacenamiento de datos

Aquí el criterio viene dado por el tamaño medio de los datos y la duración de almacenamiento.


Cálculo estimativo

Supongamos que:

  • El uso de la aplicación tendrá un DAU de 5000, es decir 5000 usuarios activos diarios.

    • Cada usuario tiene 80 lecturas. (Consultas de información por país de una patente, frecuencias aceptadas de x en un país, etc.)

      • 80 * 5000 = 400 000 lecturas diarias

        • 50 000 lecturas son GRATIS + 350 000 lecturas a USD 0.0000006

          • 350000 * 0.0000006 = 0.21$ por día

            • Al mes = 0.21$ * 30 = 6.30$ al mes

              • Al año = 6.30$ * 12 = 75.6$ al año

    • Cada usuario tiene 20 escrituras. (subidas de PDFs, modificaciones en su portal, etc)

      • 20 * 5000 = 100 000 escrituras diarias

        • 20 000 lecturas son GRATIS + 80 000 escrituras a USD 0.0000018

          • 80000 * 0.0000018 = 0.14$ por día

            • Al mes = 0.14$ * 30 = 4.32$ al mes

              • Al año = 6.30$ * 12 = 51$ al año

    • Cada usuario tiene 20 eliminaciones. (Ha eliminado un PDF que ya no es necesario porque ha sacado ese equipo del mercado, etc)

      • 20 * 5000 = 100 000 escrituras diarias

        • 20 000 lecturas son GRATIS + 80 000 eliminaciones a USD 0.0000002

          • 80000 * 0.0000002 = 0.016$ por día

            • Al mes = 0.106$ * 30 = 0.48$ al mes

              • Al año = 0.48$ * 12 = 5.76$ al año

    • Cada usuario tiene un uso de 115MB de salida diaria (Los archivos que ha subido como PDFs, las modificaciones de estado, etc)

      • 40KB * 5000 = 200MB de salida diarias

        • 20MB * 30 = 6GB al mes

          • 6GB − 3GB(Gratuitos) * 0.12 = 3GB * 0.12 = 0.36$ por mes

            • Al año = 0.36$ * 12 = 4.32$ al año

    • Cada usuario tiene un uso de 200MB de almacenamiento(Es un estimado excesivo, pero de esta manera el ballpark tiene menos riesgos)

      • 200MB * 5000 = 1TB de almacenaje

        • 1000GB * 0.18 = 180$ al mes

          • 180$ * 12 = 2160$ al año

    • Cálculo mensual total

      • (6.30+4.32+0.48+0.36+180=191.46)$ a euros son:

        179,61€

    • Cálculo anual total

      • (75.6+51+5.76+4.32+2160= 2296.68)$ a euros

        2155,01€


Conclusión

Después de haber profundizado en los cálculos de coste, sus ventajas y las soluciones que aporta Firebase, la conclusión es que al año, sin necesidad de ningún coste extra, como podría ser ocasionado por la seguridad, el mantenimiento de los servidores, las actualizaciones de librerías... Y teniendo en cuenta la cantidad de datos que maneja la aplicación y todas las ventajas que Firebase brinda, el coste de 2155€ anuales es un precio muy atractivo. Firebase es una opción increíble y ahora que la conoces, disfruta de todas sus ventajas.

Compartir
Identificarse dejar un comentario