11 pontos por GN⁺ 2025-04-25 | 3 comentários | Compartilhar no WhatsApp
  • APIs de geocoding oferecem a função de conversão entre endereços ↔ coordenadas e o reverse geocoding atribui um endereço ao ponto informado, sendo usado em diversos tipos de aplicações
  • Comparação de 7 principais serviços de API com base em preço, volume gratuito e condições de uso dos dados
    • HERE, Google Maps, Azure Maps, OpenCage, TomTom Maps, LocationIQ, Nominatim
  • Google Maps e Azure Maps têm preços altos e muitas restrições
  • LocationIQ e OpenCage são baratos e flexíveis com planos de preço fixo, sendo especialmente vantajosos para alto volume de uso
  • TomTom e HERE cobram com base no uso sem plano fixo, sendo adequados para uso pequeno ou esporádico

O que é uma API de Geocoding?

  • Geocoding: conversão de endereço → coordenadas de latitude/longitude
  • Reverse geocoding: conversão de latitude/longitude → endereço
  • Principais casos de uso:
    • exibir localização em mapas
    • visualizar dados de clientes
    • aproveitar informações de coordenadas em fotos
    • recursos de busca baseada em região (eventos, restaurantes etc.)
  • Com uma API de Geocoding, é possível implementar essas funções com facilidade
  • A maioria também oferece normalização de endereços e reverse geocoding

Critérios de comparação

  • Política de preços: a maioria cobra com base no número de requisições
  • Volume gratuito: pode haver limitação de recursos ou do número de requisições
  • Condições de uso dos dados:
    • se o uso comercial é permitido
    • se há restrições para exibição em mapas
    • se há obrigação de atribuição da fonte, etc.
  • Em um texto futuro, também serão comparadas precisão e desempenho

Contexto para garantir neutralidade

  • A Superface não oferece sua própria API de Geocoding
  • Em vez disso, fornece o cliente de API open source OneSDK, que conecta várias APIs por uma interface única
  • Os dados são enviados diretamente para a API, sem passar pelos servidores da Superface
  • O OneSDK é totalmente gratuito e permite integrar várias APIs ao mesmo tempo

Resumo das características de cada API

  • HERE

    • 1.000 requisições grátis por dia e, no Base Plan, 30.000 grátis por mês
    • $0.83/1.000 requisições até 5M de requisições e $0.66/1.000 até 10M
    • Uso comercial permitido e cobrança flexível
  • Google Maps Platform

    • 40.000 requisições grátis com $200 de crédito mensal
    • Depois disso, $5/1.000 requisições e $4/1.000 para alto volume
    • Os resultados só podem ser exibidos no Google Maps e a atribuição da fonte é obrigatória
    • Limite de 50 requisições por segundo
  • Azure Maps

    • 5.000 requisições grátis por mês e depois $4.50/1.000 requisições
    • Geocoding: 500 requisições por segundo, Reverse: 250 requisições por segundo
    • Junto com o Google, é uma das opções mais caras
  • OpenCage

    • Gratuito: 2.500 requisições/dia, com limite de 1 requisição por segundo
    • Pago: $50/mês (10.000/dia), $1.000/mês (300.000/dia)
    • “Limite flexível”: não bloqueia imediatamente ao exceder
    • Não exige atribuição da fonte e aceita várias moedas
  • LocationIQ

    • Gratuito: 5.000 requisições/dia, com uso comercial permitido (exige link de atribuição)
    • $49/mês (10.000/dia), $950/mês (1M/dia → 30 milhões/mês)
    • Oferece o menor custo unitário ($0.03/1.000 requisições)
    • Mesma política de limite flexível
  • TomTom Maps

    • Gratuito: 2.500 requisições/dia
    • Depois disso, €0.50/1.000 requisições (cerca de $0.54)
    • Uso comercial permitido, sem plano de preço fixo
  • Nominatim

    • API open source baseada no OpenStreetMap
    • Gratuita, mas permitida apenas para uso não comercial
    • Máximo de 1 requisição por segundo e atribuição da fonte obrigatória
    • Pode ser instalada em servidor próprio

Resumo da comparação de preços

  • Uso pequeno (até 30.000 requisições/mês)

    • HERE, Google Maps, TomTom e LocationIQ: uso gratuito possível
    • Azure Maps: $112.5/mês
    • OpenCage: gratuito ou $50/mês
  • Uso intermediário (100.000 requisições/mês)

    • Mais baratos: LocationIQ, TomTom ($16.2)
    • Mais caros: Azure Maps ($427.5), Google Maps ($300)
  • Uso alto (300.000 requisições/mês)

    • Mais baratos: LocationIQ ($49), TomTom ($121.5)
    • Mais caros: Azure Maps ($1,327.5), Google Maps ($1,100)
    • HERE: $224.1
    • OpenCage: $50~$125

Conclusão: recomendações por cenário

  • Alto volume de uso:
    • Mais caros: Azure Maps, Google Maps
    • Mais baratos: LocationIQ, OpenCage
  • Uso flexível:
    • TomTom: custo unitário baixo, sem plano fixo
  • Quando se quer alto volume gratuito:
    • Google Maps (40.000), HERE (30.000)
  • Quando se quer o melhor custo por requisição:
    • LocationIQ (capaz de oferecer 1M por dia)
  • Projetos pequenos, pessoais ou não comerciais:
    • Nominatim

Material de referência

3 comentários

 
amada 2025-04-25

Se for usar apenas regiões da Coreia,
o Geoservice parece ser uma boa opção.

 
rtyu1120 2025-04-25

O que mais me deixa curioso é até que ponto os endereços da Coreia são bem suportados...

 
GN⁺ 2025-04-25
Opiniões do Hacker News
  • Este documento menciona requisitos de atribuição, mas não aborda a pergunta sobre APIs de geocodificação que mais me interessa

    • Se é possível armazenar permanentemente no meu banco de dados as coordenadas de latitude/longitude retornadas pela API e usá-las para consultas de ponto em polígono ou de ponto mais próximo
    • Se é possível redistribuir essas coordenadas de latitude/longitude na minha própria API
    • Muitas APIs de geocodificação populares, incluindo a do Google, não permitem isso
    • Isso limita bastante a utilidade da API
    • A OpenCage é muito boa por esse motivo
    • "Armazene os resultados da geocodificação pelo tempo que quiser. Mantenha os resultados mesmo que você não seja cliente."
  • Olá, sou Ed, um dos fundadores da OpenCage

    • Esta comparação é, sinceramente, uma comparação superficial que considera apenas preço
    • Preço importa, mas, como alguém que trabalha com geocodificação há mais de 10 anos, há muitos fatores a considerar dependendo das necessidades do cliente
    • Por exemplo, qualidade, termos de uso dos dados, suporte, enriquecimento de dados, facilidade de uso, documentação, condições de pagamento etc.
    • A única resposta para "qual serviço de geocodificação é o melhor" é "depende da situação"
    • Temos um guia abrangente para compradores de geocodificação em nosso site
    • Se quiser, entre em contato e direi se o serviço é adequado para você
  • É bom ver ótimos comentários sobre várias APIs e seus recursos

    • Dados básicos de endereços são muito difíceis de encontrar
    • O motivo de provedores comerciais de geocodificação não permitirem armazenar os dados é o receio de que os usuários acumulem dados suficientes para construir seu próprio geocodificador
    • Para ajudar nisso, iniciamos um grupo chamado OpenAddresses
    • O objetivo é encontrar todos os dados públicos de endereços do mundo
    • Várias APIs usam como parte principal os conjuntos de dados mencionados nesta thread
    • Já faz mais de 10 anos, mas seria ótimo se mais pessoas encontrassem mais fontes de endereços
  • Photon é um componente hospedável que não recebe a devida atenção

    • Ele usa os dados do geocodificador Nominatim do OSM e oferece um banco de dados para download, recurso de autocomplete e um arquivo .jar instalável
    • Se você estiver satisfeito com as limitações dos dados do OSM, é fácil e rápido
  • Um bom teste para uma API de geocodificação é inserir um ZIP code exclusivo de PO Box

    • Por exemplo, se ao inserir 22313 ela retornar uma localização perto de Alexandria, VA, então é uma API de geocodificação decente
    • Se não retornar localização ou retornar outro lugar, é bem provável que haja problemas em produção
  • A OpenCage tem um valor muito bom se ela se encaixar no seu caso de uso

    • Há limitações, mas o nível gratuito e o limite de taxa são generosos
    • A relação preço/desempenho/qualidade é excelente
    • Ed Freyfogle tem muito conhecimento em geotecnologia e é uma pessoa acessível
    • A documentação dele é excelente e a API é muito fácil de começar a usar
  • Há outra opção

    • Comprar um servidor Docker barato
    • Instalar a stack OSM/Nominatim usando Docker
    • Graças ao Docker, a configuração ficou muito fácil
    • Custo fixo e previsível
    • Pode lidar com o tráfego que você quiser, e isso é totalmente viável até com um v-server barato
    • Sem problemas de privacidade com terceiros
  • Geocodio também é uma boa opção

    • Especialmente útil quando você precisa de processamento em lote
  • Pesquisei esses serviços em 2019

    • Usei bastante Azure Maps, MapQuest e o Nominatim do OpenStreetMap
    • Acabei escolhendo o Nominatim por restrições financeiras
    • Normalização de endereços era um grande problema
  • Depois que este texto foi escrito, a Stadia Maps também lançou sua própria API de geocodificação e a desenvolveu bastante

    • Ela foi baseada no Pelias, mas melhorou muito o desempenho e a precisão com fontes de dados adicionais
    • Se tiver perguntas, terei prazer em responder