Um endereço IP é atribuído a uma rede, não a uma pessoa ou a um prédio. Esse único fato explica quase tudo sobre o que a geolocalização de IP pode e não pode fazer. Quando você consulta um IP, está perguntando onde a rede que detém aquele bloco de endereços está registrada e é operada, e inferindo uma localização a partir disso. Você não está pedindo que um dispositivo informe sua posição de GPS, que é a única forma confiável de obter um endereço de rua.
Registros regionais de internet como ARIN, RIPE NCC, APNIC, LACNIC e AFRINIC alocam blocos de endereços para provedores de internet e grandes redes, não para residências individuais. Um provedor pode deter um bloco que atende uma região metropolitana inteira ou uma região, e distribuir os endereços dentro dele aos clientes dinamicamente conforme eles se conectam. Consultar qualquer um desses endereços identifica corretamente o provedor e muitas vezes a cidade, mas não tem como saber em qual prédio a conexão termina no momento, porque essa informação nunca sai dos sistemas do próprio provedor.
É por isso que as consultas de IP retornam país, região, cidade e organização, e não um resultado no nível da residência. É também por isso que dois dispositivos na mesma rede de escritório, compartilhando o mesmo IP público, resultam exatamente na mesma localização, mesmo que estejam em salas ou andares diferentes. O IP identifica o ponto de saída para a internet, e não o ponto final dentro do prédio.
O padrão prático de precisão que decorre disso é consistente em todo o setor. Os resultados no nível de país estão quase sempre corretos, já que os blocos de endereços são alocados dentro de fronteiras nacionais. Os resultados no nível de cidade costumam estar corretos, mas podem estar errados quando um provedor encaminha o tráfego por um hub regional em outra cidade. Qualquer coisa mais granular do que isso, uma rua ou um prédio específico apenas a partir do IP, deve ser tratada como não confiável, seja qual for o provedor que você usa, porque os dados subjacentes simplesmente não permitem essa resolução.
Uma boa geolocalização de IP é honesta sobre esse teto em vez de fingir mais precisão do que os dados permitem. As consultas de IPv4 e IPv6 do My Geocode retornam país, região, cidade, código postal, coordenadas, fuso horário, ASN e organização exatamente por esse motivo, para que você receba os campos que uma consulta baseada em rede realmente consegue sustentar, na granularidade em que ela é confiável.
Se o seu produto precisa de um endereço de rua real, peça-o ao usuário ou solicite o GPS do dispositivo. Use a geolocalização de IP para aquilo em que ela é boa: sinais de fraude, conteúdo regional, análises aproximadas e valores padrão que o usuário pode alterar.
Um endereço no centro de uma cidade bem mapeada quase não diz nada sobre como o seu sistema lida com uma estrada rural, uma fronteira disputada ou uma consulta perto dos polos. Teste os casos difíceis de propósito.
Nem todo conjunto de dados com informações de localização de aparência pública pode ser usado legalmente dentro de um produto pago. Os termos de licenciamento, e não a disponibilidade técnica, costumam definir o limite real.
Quando uma consulta realmente não pode ser resolvida de forma confiável, não retornar nada é uma resposta melhor do que retornar um palpite disfarçado de fato. Veja o raciocínio por trás dessa escolha.