Alternativas económicas a Google Map API

En los últimos meses me han llegado consultas sobre cómo reducir los costes de mapas en la web y cuales son las alternativas más económicas a google map api para mostrar mapas en una página web. 

Analizar servicios que ofrecen distintas funcionalidades y qué miden el coste de forma diversa, es complicado.

Por ello voy a hacer un ejercicio comparativo teniendo en cuenta las siguientes premisas y haciendo un cálculo en base a los usuarios mensuales.

Requerimientos:

  • Se ha de mostrar un mapa para web que sea navegable.
  • Ha de disponer de distintos estilos de mapas. 
  • El mapa ha de disponer de amplia funcionalidad, añadir puntos, polígonos, etc. 
  • Ha de tener una buena performance.

Las opciones que he podido comprobar son Google map api, Mapbox api y varios proveedores de tiles usando los script de Mapbox gl y Leaflet, que tienen toda la funcionalidad necesaria.

Podríamos añadir la opción de montar un propio servidor de mapas, pero sería complejo calcular los costes por usuario. 

** Cuando hablamos de tiles nos referimos a las imágenes que se usan para generar el mapa, cada mapa se genera con la unión de distintas tile (imágenes) para los mapas raster y teselas vectoriales para los mapas vectoriales.

La mayoría de servicios disponen de un sistema de precios por request, por ello es complicado calcular el coste por usuario. Y para este caso el objetivo es hacer el cálculo por usuario.

Para hacer un ejercicio de aproximación y en base a la experiencia con servicios ofreciendo mapas a más de 4 millones de usuarios al día, podemos considerar. 

  • De media un usuario genera unas 80 request raster.
  • Si es vectorial la media serian 16 request. 
  • En el caso de Map View serian 4.

Hemos de tener en cuenta que algunos usuarios no usan el mapa (el 80%), del resto entre un 5% y 10% usan el mapa de forma intensiva, en cualquier caso estos son supuestos con los que trabajar para poder hacer un cálculo aproximado, cada web se comporta de forma diferente.

Para hacer el cálculo consideramos 3 franjas de portales web con cantidades de tráfico por usuario.

  • < 10k usuarios mes.
  • < 250k usuarios mes.
  • < 1 millón usuarios mes.

Se analizan:

No ha sido posible analizar Bing y Here por el sistema de precios que tienen.

También es importante tener en cuenta que cada proveedor ofrece una serie de servicios distintos y que algunos de estos están incluidos en el precio, por lo que estos datos se han de tomar como una aproximación y nunca en sentido estricto. 

Estos son los datos:

Proveedor< 10k< 250k< 1 millon
Maptiler Vectorial18 €221 €896 €
Maptiler Raster32 €896 €3.596 €
Thunderforest Raster109 €224 €454 €
Stadia Maps47 €372 €1.116 €
Mapbox–   €750 €2.827 €
Google–   €1.300 €4.600 €
Geoapify Vectorial–   €299 €?
Geoapify Raster49 €600 €?
JawgMaps Vectorial–   €500 €500 €
JawgMaps Raster–   €500 €?

Con el valor “?” están los datos que no he podido calcular y que están sometidos a negociación. En casi todos los casos para más de 500k usuarios al mes los precios han de ser negociados. 

Con esta tabla ya te puedes hacer una idea de precios, también has de tener en cuenta que para reducir costes hay técnicas que puedes usar. 

  • En el caso de Google map y Mapbox se puede usar una estrategia de carga solo cuando el usuario reacciona y mientras, dejar un icono o una imagen estática. 
  • En el caso de proveedor de tiles podemos tener la misma estrategia anterior, y si nuestras áreas de renderizado son casi siempre las mismas, podemos implementar un caché previo y con ello reducir las request de forma considerable. 

Es de agradecer cualquier comentario, ten en cuenta que este es un ejercicio con un margen alto de error pero que nos puede ayudar a conocer mejor el mercado de los mapas y ayudarnos en la toma de decisiones. 

Deja una respuesta