Webinar
Smarty

What is geocoding - A comprehensive guide

What you can find on this page:

Geocoding Fundamentals

down-arrow
city image

Geocoding transforms the description of a location, such as an address or place name, into corresponding geographic coordinates that indicate the place's location on the earth's surface. These resulting lat long coordinates are referred to as a geocode.

Geocoding fundamentals

There are a variety of companies that offer address geocoding. Here are a few ways you can start geocoding right now.

geocoding trail
Single Address Geocoding

Enter one US or international address at a time to find the corresponding geocode.

Batch Geocoding

Upload or copy & paste a batch list of US or international addresses to find corresponding geocodes.

Geocoding APIs

Integrate geocoding directly into your application with an application programming interface to geocode automatically based on your specifications.

Reverse Geocoding API

Add reverse geocoding into your application to turn latitude & longitude coordinates into addresses.

Geocoding plugin

Users of QGIS can download a plugin to geocode addresses one at a time or by uploading a list of addresses for batch geocoding.

Basic geocoding definitions

geocoding-definitions
Geocode

A set of latitude and longitude coordinates that represents a specific geographic place, such as a landmark, street address, place name, or location.

Geocoding

(or forward geocoding) The process of transforming the description of a location, such as an address or place name, into corresponding geographic coordinates.

Reverse geocoding

The process of converting a set of coordinates, like latitude & longitude coordinates, into the nearest street address and sometimes into the nearest place name or landmark.

Decimal degrees

Decimal degrees are a simplified way to express latitude and longitude coordinates, offering an alternative to Degrees Minutes Seconds (DMS) notation. They are useful for calculations and digital systems due to their convenience and precision.

Geocoding accuracy

Rooftop, parcel centroid, interpolated, ZIP9 - What types of geocoding accuracy are available, and what do they mean?

Subaddress geocoding

A higher resolution of geocoding accuracy than rooftop geocoding. These are geocodes for individual apartments, townhomes, and other secondary address types.

International geocoding

International geocoding is when you match a mailing or street address to the lat-long coordinates of a place anywhere in the world.

The steps of address geocoding

When you submit an address to a high-accuracy geocoding service, these steps should happen behind the scenes.

steps of address geocoding
Address parsing

Parsing divides a street address into individual or grouped components such as building number, predirectional, street name, postdirectional, street suffix, city, state, and ZIP Code.

Address standardization

Address Standardization Standardizing corrects casing, abbreviations, and spelling errors. The process reformats the address to match the local postal authority's standard format. Standardization also adds missing components like city, state, and postal codes as appropriate.

Address validation

Address Validation Validating matches the parsed, standardized, corrected version of the address to an authoritative database of known addresses to find a match. The validation step ensures that the address represents a real, shippable place.

Address geocoding

Address Geocoding Using a validated address for geocoding increases match rates, minimizes the risks of false positives, and filters locations that don't exist. The most accurate lat/long coordinates are then returned.

Useful geocoding articles & videos

When you submit an address to a high-accuracy geocoding service, these steps should happen behind the scenes.

Geocoding articles and videos
Why accurate geocoding requires address validation

Geocoding requires precise address data. Learn why performing address validation and address standardization before geocoding improves match rates and prevents false positives.

FFIEC geocoding alternatives

For organizations needing to comply with HMDA and CRA reporting requirements, the FFIEC Geocoding tool is essential. However, for a more integrated and automated approach, consider using Smarty's US GeoReference data.

How do I get geocodes?

We're glad you asked. This article covers how to look up latitude and longitude coordinates in the US and internationally.

Popular lat long (geocoding) providers compared

See how services like Google Maps, OpenCage, Melissa, and Smarty compare for geocoding accuracy, speed, price, and more.

What false positives are, how they're created, and how to avoid them

False positives are bad data disguised as good data, which can infiltrate your system through errant geocoding processes.

Why no-matches geocodes are better than the alternative

A no-match response from a geocoder is an excellent defense against a great evil–false positives.

The difference between "mappable" and "valid"

Mapping providers may provide geocodes even if they don't represent real places. Learn why it happens and how to prevent it.

When geocode service won't provide ZIP+4 Codes

Learn why it happens and how to get them.

How to identify the right level of geocoding accuracy (video 28:14)

How would it impact your business if your rooftop geocodes are nowhere near rooftop accurate? How does "parcel" compare with "property" or "streetfront," and how is it related to interpolation? Resident geocoding expert Adam Charlton clears up the confusion about geocoding accuracy.

US Rooftop Geocoding product overview (video 8:44)

Learn how Smarty's US Rooftop Geocoding helps you to create advantages over your competitors.

What can geocoding be used for?

Geocoding is essential for mapping and navigation, location-based services, logistics and supply chain management, real estate and property management, emergency services, market analysis, urban planning, and business intelligence, to name a few. Review our case studies for a deep dive into how companies are using Smarty's rooftop geocoding:

what can geocoding be used for
Apartment geocoding

Kibage uses apartment geocoding to aid home care services.

Risk analytics

Rooftop geocodes are essential for P&C risk management for this insurance data analytics company.

Sales mapping & routing

SalesRabbit use rooftop geocoding to create the most accurate sales mapping & routing software to optimize sales productivity.

Spatial analysis & predictive modes

The American Red Cross uses geocoding to create accurate maps to create predictive models and home fire risk maps.

5 industry use cases for US Rooftop Geocoding (video 45:32)

P&C insurance, telecom 5g coverage, and other high-accuracy geocoding use cases are covered in this webinar recording.

General geocoding tutorials

what is geocoding used for
What is a rooftop geocode lookup? (video 1:44)

Learn what it is and how to look one up using Smarty's single address verification tool.

How to geocode US addresses in QGIS (video 3:48)

Use Smarty's QGIS Geocoding Plugin in the popular QGIS application to geocode addresses one at a time or by batch.

Geocoding APIs

A Geocoding API is an Application Programming Interface (API) that performs forward or reverse geocoding requests. Geocoding data can then be used for routing, mapping, insurance risk analytics, geospatial meta-analysis, and location-based advertising.

Smarty® offers two geocoding APIs, one for US addresses and the other for international addresses. Both APIs are fully documented, backed by a suite of SDKs, have enough sample code to take down an AT-AT, and are backed by our legendary customer support.

US Rooftop Geocoding

US Rooftop Geocoding is an optional data point available through our US Street Address API.

Sample GET request

By subscribing to a US Rooftop Geocoding license, you can include us-rooftop-geocoding-cloud in your call, and receive rooftop geocodes in the response.

curl -v
"https://us-street.api.smarty.com/street-address?key=YOUR-API-
KEY&candidates=10&street=1052%20Canyon%20Meadow%20Dr%20Apt%205&city=provo&state=ut&zipcode=84606&ma
tch=enhanced&license=us-rooftop-geocoding-cloud"

Sample API response in JSON

The precision value in the response indicates that the latitude and longitude values are rooftop accurate (the highest available accuracy level) for this address. If a rooftop geocode isn't available, the application automatically cascades to the next accuracy level until a match is found. The precision level achieved always prints in the response.

[
    {
        "input_index": 0,
        "candidate_index": 0,
        "delivery_line_1": "1052 Canyon Meadow Dr Apt 5",
        "last_line": "Provo UT 84606-3630",
        "delivery_point_barcode": "846063630059",
        "components": {            "primary_number": "1052",
            "street_name": "Canyon Meadow",
            "street_suffix": "Dr",
            "secondary_number": "5",
            "secondary_designator": "Apt",
            "city_name": "Provo",
            "default_city_name": "Provo",
            "state_abbreviation": "UT",
            "zipcode": "84606",
            "plus4_code": "3630",
            "delivery_point": "05",
            "delivery_point_check_digit": "9"
        },        "metadata": {
            "record_type": "H",
            "zip_type": "Standard",
            "county_fips": "49049",
            "county_name": "Utah",
            "carrier_route": "C019",
            "congressional_district": "03",
            "rdi": "Residential",
            "elot_sequence": "0107",
            "elot_sort": "A",
            "latitude": 40.220009,
            "longitude": -111.629074,
            "coordinate_license": 1,
            "precision": "Rooftop",
            "time_zone": "Mountain",
            "utc_offset": -7,
            "dst": true        },
        "analysis": {
            "dpv_match_code": "Y",
            "dpv_footnotes": "AABB",
            "dpv_cmra": "N",
            "dpv_vacant": "N",
            "dpv_no_stat": "N",
            "active": "Y",
            "enhanced_match": "postal-match"
        }
    }
]

Read the full HTTP response output field definitions for US addresses here.

International Geocoding API

International geocoding is available through our International Street Address API.

Sample GET request

Example from a Japanese address with Kanji transliterated to latin characters

curl -v
"https://international-street.api.smarty.com/verify?
key=21102174564513388&country=Japan&address1=%E4%B8%AD%E4%B9%8B%E5%B3%B6%EF%BC%94%E4%B8%81%E7%9B%AE
%EF%BC%92%E2%88%9255&address2=%E5%8C%97%E5%8C%BA&locality=%E5%A4%A7%E9%98%AA%E5%B8%82&administrativ
e_area=%20%E5%A4%A7%E9%98%AA%E5%BA%9C&postal_code=5300005&geocode=true"

Sample API response in JSON

`
{[
    {
        "address1": "530-0005",
        "address2": "大阪府 中之島 4丁目 2 55",
        "components": {
            "administrative_area": "大阪府",
            "administrative_area_long": "大阪府",
            "administrative_area_short": "大阪府",
            "sub_administrative_area": "大阪市北区",
            "country_iso_3": "JPN",
            "locality": "中之島",
            "dependent_locality": "4丁目",
            "dependent_locality_name": "4丁目",
            "postal_code": "530-0005",
            "postal_code_short": "530-0005",
            "premise": "55",
            "premise_number": "55",
            "thoroughfare": "2",
            "thoroughfare_name": "2"
        },
        "metadata": {
            "latitude": 34.694443,
            "longitude": 135.487961,
            "geocode_precision": "Thoroughfare",
            "max_geocode_precision": "DeliveryPoint",
            "address_format": "postal_code|administrative_area locality dependent_locality thoroughfare premise|"
        },
        "analysis": {
            "verification_status": "Partial",
            "address_precision": "Thoroughfare",
            "max_address_precision": "DeliveryPoint",
            "changes": {
                "components": {}
            }
        }
    }
]
}

Next, try this address yourself in the Live API or add the "language" input field, and enter the value "Latin" to transliterate the Kanji characters to Latin characters.

Read the full HTTP response output field definitions for international addresses here.

Supported geocoding libraries & software developer kits (SDK)

Calling Smarty's APIs for geocoding is easy with our suite of well-tested, supported, actively developed, open-source SDKs and include example code for geocoding, reverse geocoding, validation & more. All are available to use at no charge, including:

Geocoding API tutorials

Calling Smarty's APIs for geocoding is easy with our suite of well-tested, supported, actively developed, open-source SDKs and include example code for geocoding, reverse geocoding, validation & more. All are available to use at no charge, including:

Batch geocoding

To Batch Geocode - (or perform batch geocoding) is the process of uploading a spreadsheet or copying/pasting a list of addresses to a software provider and receiving back the corresponding latitude and longitude geographic coordinates for each address in the list at once. Here's how to get started:

batch geocoding
How to turn spreadsheets into geocodes

See different methods for turning a spreadsheet into geocodes via web interface and command-line interface. See the Geocoding API section above to batch geocode via API.

How batch processing works

A detailed explanation of geocode batch processing and the best available options.

QGIS batch rooftop geocoding for US addresses (video 21:50)

Webinar recording demonstrating how to batch geocode at speeds of up to 600-700 records per second in the QGIS application.

Batch geocoding tools

batch geocoding tool
Geocode with spreadsheet, CSV, & bulk copy/paste tool

US & International Geocoding is built into our bulk address validation tool. Here are complete instructions for using the tool.

Batch geocoding with command line interface (CLI) (guide)

US Geocoding is built into our Bulk Address Validation: Command Line Interface tool. Works with Windows, MacOS X, Linux (i386), and Linus (amd64).

QGIS Geocode Plugin - US Address

Download QGIS and install Smarty's QGIS plugin. Then refer to the QGIS guide below.

Batch geocode with Google Sheets plugin

Easily validate and geocode US addresses directly in Google Sheets with our add-on.

Batch geocode with Excel plugin

Seamlessly validate and geocode US addresses right in Excel with our address verification add-on.

Batch geocoding tutorials

batch geocoding tutorial
How to batch geocode in 5 easy steps (video 3:21)

Geocode a spreadsheet or CSV file of addresses. Process up to 25,000 addresses at a time using our bulk address tool.

Batch geocoding in QGIS (guide)

How to use Smarty's QGIS Geocoding Plugin to batch geocode US addresses.

Reverse geocoding

Reverse Geocoding - is the process of converting a set of coordinates, like latitude & longitude coordinates, into the nearest street address and sometimes into the nearest place name or landmark.

reverse geocoding
How businesses use reverse geocoding

Reverse geocoding is great for spatial analysis and understanding user travel behavior and can be used for predictive modeling and location-enabled advertising.

Forward geocoding vs. reverse geocoding

What's the difference, and why does it matter.

Reverse geocoding use case (video)

How reverse geocoding helped when Hurricane Katrina hit.

Reverse Geocoding API

reverse geocoding api
US Reverse Geocoding API

Enter a set of latitude and longitude coordinates and see an API response in JSON with the 10 nearest addresses sorted by distance. Did you leave your coordinates at home? No worries, we have sample lat/long data available.

US Reverse Geocoding API documentation

Implementation is easy with complete documentation and sample code. Learn about URL composition, request methods, status codes, and output field definitions.

US Reverse Geocoding API pricing

Monthly and yearly plans available with up to unlimited lookups at unlimited records per second.