The short answer
When an address will not geocode, first check what was sent: the street, city, state, ZIP code and country, as well as the columns selected for the lookup. Correct a typo or missing part, remove unit text in a helper column if it is getting in the way, and try the affected row again. Compare any returned address with the original before using the coordinates.
In MapRows, NO_MATCH means nothing was found. LOW_CONFIDENCE means a match was found, but its confidence is below 0.6. These need different checks: a missing match calls for a better input or a human check, while a low-confidence match needs review to see whether the result is specific enough. An ERROR can be temporary, so read the status and check the task’s progress before changing every address.
You can clean text and count statuses with ordinary Google Sheets formulas, without an add-on. For a few addresses, a manual check may be enough. Our geocoding guide also describes a free Apps Script and the free Census batch geocoder for US addresses. MapRows is useful when you want a sidebar, row statuses and a way to resume a larger task in the sheet. Free includes 100 lookups per day; Pro includes 2,500 per day, subject to fair use.
No geocoder is perfect. An address can be complete and still be missing from the underlying data, and a plausible result can point to the wrong place. Some rows will need a human check or a different source. Do not treat a coordinate as proof that the intended building was found.
Read the status first
MapRows writes a status for each row. Use it to decide whether to inspect the input, review a match or resume a stopped task. The coordinate-specific INVALID_INPUT status is included here because it can appear when working with coordinates, even though it is not an address-spelling diagnosis.
| Status | Meaning | What to do |
|---|---|---|
OK | Matched with good confidence. | No correction is indicated by the status. Check important results against the input. |
LOW_CONFIDENCE | Matched below 0.6 confidence, often only to a street or town. | Compare the formatted address with the input. Add city or ZIP, or set a country filter, then retry if needed. |
NO_MATCH | Nothing was found. | Check spelling and selected columns, add missing address parts and retry. |
EMPTY_INPUT | The input cells were blank. | Leave an intentionally blank row alone, or enter the missing input and retry. |
INVALID_INPUT | Coordinates could not be read. | Check latitude and longitude, use a pair such as 34.05, -118.25 or two numeric columns. Latitude must be −90 to 90 and longitude −180 to 180. |
ERROR: … | A temporary problem, such as a rate limit. | Run again; only unfinished rows are retried. If the task paused at a limit or shared capacity, wait for the reset and resume. |
A status is a starting point, not a substitute for reading the result. An OK result has good confidence, but the documentation warns that results can be wrong or incomplete. A match to a town may be useful for a broad regional summary and unsuitable when you need a particular building.
If you are using the Apps Script or Census method instead, read the result labels for that method. For example, the Census batch output uses No_Match and Tie; those are not MapRows statuses. Our geocoding guide explains how to read those results and join them back to the source list by ID.
Fix the address in Google Sheets
Keep the original address and make corrections in helper columns. That gives you something to compare with the returned formatted address and avoids losing a unit or other information you may need for another purpose. The examples below use fictional inputs. Replace cell references with the cells in your own sheet and copy a formula down only as far as needed.
Check spelling and abbreviations. Look for a mistyped street or city, a missing house number, and abbreviations that make the input unclear. Compare the row with a reliable source available to you. Expand or correct a questionable abbreviation when you know what it means; do not guess at an unfamiliar street name. A formula can tidy text, but it cannot establish the correct address from a misspelling alone.
Add the missing location. A street name without a city, state or ZIP can describe more than one place. Add the parts you can verify, including the country when the list spans countries. For example, 123 Main St gives less context than 123 Main St, Springfield, IL 62701. The longer example is an illustration of a complete input, not a promise that this particular address will match.
Separate a unit from the building address. Geocoders match buildings rather than suites. If a row contains 418 Alder Ln, Apt 2, Eugene, OR 97401, retain the original and try a helper value without , Apt 2. For this exact comma-separated pattern, put the address in A2 and use =TRIM(REGEXREPLACE(A2,", Apt [0-9]+","")) in a helper column. The example becomes 418 Alder Ln, Eugene, OR 97401.
That formula is deliberately narrow: it removes a comma, a space, Apt, another space and digits. It does not cover every suite, spelling or unit format. Check the helper value before using it, especially if your addresses have different conventions. Do not delete unit details from the original row just because a building-level lookup does not need them. Our address-splitting guide covers more patterns.
Recognize PO boxes. A PO box is not a street address for a particular building, so a geocoder may return no match, or a match for the post office or town rather than the box. If your task needs a physical location, obtain and verify a street address when possible. Do not replace a PO box with an assumed street address. If the mailing address is all you have, mark the row for a human decision instead of treating a nearby result as the box’s location.
Restore a leading ZIP zero. If a five-digit US ZIP was converted from 02108 to the number 2108, use =TEXT(A2,"00000") in a helper cell to produce 02108. Point A2 at your ZIP cell. The formula pads a number; it cannot determine the correct ZIP, so compare it with the source. It is intended for five-digit ZIPs, not a general repair for every postal code or ZIP+4.
Clean hidden characters and spaces. Try =TRIM(CLEAN(A2)) for ordinary extra spaces and hidden characters. A non-breaking space needs a separate replacement: use =TRIM(SUBSTITUTE(A2,CHAR(160)," ")). If you need both steps, use =TRIM(CLEAN(SUBSTITUTE(A2,CHAR(160)," "))). Compare the cleaned cell with the original before selecting it for a lookup; cleaning characters does not add a missing address part.
Make one understandable change at a time when a row is difficult. If removing a unit produces a result, compare the building address with the original. If adding a city changes a match from one place to another, verify the city rather than assuming the newer result is correct. Keep uncertain rows marked for review.
Check columns and country
If many addresses are not geocoding in Google Sheets, inspect the setup before editing the whole list. Open Extensions → MapRows → Open MapRows, then choose the Geocode tab. Select the intended sheet and header row. MapRows suggests address-like columns, but you should check what is selected against the actual values in a few rows.
For a full address, select the one column containing it. If the parts are separate, select them in order: Street, City, State, ZIP. For example, a row with 123 Main St, Springfield, IL and 62701 should have those four parts selected in that order. A selection containing only ZIP codes, or a city column mistaken for the street column, does not provide the same input as the complete address.
If your corrected address is in a helper column, select that helper column for the next lookup. If you keep the parts separate, select the corrected part alongside the other intended parts. Check several rows because a column that looks right in the first row may be blank or contain different kinds of text farther down.
Use Limit to a country when the addresses should be matched in one country. It can help prevent an ambiguous street or town from being matched in the wrong country. Check that the chosen country is appropriate for the rows you send. For a list spanning countries, include the country in the address and review how you group and check the rows; one country filter is not appropriate for an entire mixed-country list.
MapRows results come from Geoapify using OpenStreetMap data. The data can be wrong or incomplete, especially for new buildings and rural addresses. Check that a rural address has all the information you can verify, but recognize that adding punctuation or repeatedly retrying cannot guarantee a match. If the data does not contain the location, leave the row for a human check or consult another source.
Check low-confidence matches
A LOW_CONFIDENCE result is a candidate, not a confirmed failure and not an automatic approval. MapRows uses that status below 0.6 confidence. The result may represent only a street or town, even when the input includes a building. Start by comparing the returned formatted address with every meaningful part of the input: house number, street, city, state, ZIP and country where applicable.
On the Geocode tab, choose Everything output when you need the confidence and match type columns as well as the address details. You can also select fields individually. Read the match type and confidence alongside the formatted address, not in isolation. A number cannot tell you whether the location is sufficiently precise for a particular decision.
For example, if the input names a building but the formatted address identifies only its town, the result may be acceptable for a rough town-level summary. It is not enough to identify that building. If the input and result agree on the building and the location is adequate for your use, you may decide to accept it after checking. For a decision where an incorrect location matters, use a reliable independent check even if the status is OK.
Watch for several rows with identical coordinates. That can be a sign that they matched the same city or ZIP center rather than their individual buildings. Compare each formatted address with its source; identical coordinates are a reason to investigate, not proof by themselves that every row is wrong.
When a match is too broad, add a verified city or ZIP, check the country setting and retry the row. If the returned address remains incomplete, keep the row flagged. A low-confidence result does not become precise simply because it was returned again.
Retry failed rows
Before retrying, keep the original input, the corrected helper value and the status together on the same row. Check that the chosen sheet, header row and address columns are still correct. If you only want to work on particular rows, choose Selected rows on the Geocode tab; otherwise choose All rows. Press Geocode and inspect the new status and formatted address.
Skip rows already done is on by default. It skips rows with OK or LOW_CONFIDENCE, so finished rows do not use lookups again on a rerun. A NO_MATCH row is not in that skipped pair. After correcting its input, retry it and see whether the result has improved.
A corrected LOW_CONFIDENCE row needs extra care because the default skip still treats it as done. To run it again, untick the skip checkbox on the Geocode tab (it is labelled Skip rows already geocoded in the sidebar), select only the corrected rows, choose Selected rows and press Geocode. Each row you run again costs another lookup, so do not leave All rows chosen with the skip option off unless you mean to repeat the whole sheet. Tick the checkbox again afterwards, and compare the new status and formatted address with the old ones. Do the same if you need to revisit an OK row after discovering an input error.
MapRows writes results in new columns to the right of your data. Each new header has a note starting with MapRows:; keep the notes so later runs reuse those columns. MapRows does not edit your own columns or formulas.
For an ERROR, the documentation says to run again and only unfinished rows are retried. If a task pauses because the daily allowance or shared daily capacity runs out, wait for the reset and press Resume. The sidebar shows usage and the reset time in your time zone. If you closed the sidebar during a task, reopen it and press Resume. A retry cannot repair an incomplete address or guarantee a match.
How to filter and count failures
Counting statuses helps you separate rows that need address work from rows that need a match check. Point each formula at your own MapRows status column. For example, if the statuses for your data happen to be in H2:H100, =COUNTIF(H2:H100,"NO_MATCH") counts the rows marked NO_MATCH. Use your actual column and range, not H merely because it appears in this example.
Use the same pattern for other statuses: =COUNTIF(H2:H100,"LOW_CONFIDENCE") counts matches needing review, and =COUNTIF(H2:H100,"EMPTY_INPUT") counts blank inputs. These are counts of the status text, not counts of verified bad addresses. A low-confidence row may be usable for a broad task, and an empty input may be intentional.
Create a filter view in Google Sheets and filter your actual status column for NO_MATCH to review those rows together. Check in your account if you need the current filter-view controls. Then review LOW_CONFIDENCE separately, with the original and formatted addresses visible. Keep whole rows together as you work, so each status stays beside the input and result it describes.
Record why you changed a difficult row in your own review column, such as “added verified city” or “building address needed.” After a retry, recount and inspect the remaining rows. A smaller count does not establish that every new match is correct. Compare the returned addresses and investigate repeated coordinates before using the data.
For a list that regularly exceeds the free allowance, see our large-list guide and the plan details. A free Apps Script or Census batch file may be enough for your list; our geocoding guide explains their setup, limits and checks.
Common problems
Everything says NO_MATCH. Check the selected sheet, header row and input columns first. If the address is split across columns, select Street, City, State and ZIP in that order. If a helper column holds the corrected full address, select it instead of an unrelated column. Inspect a few actual cells for missing location details or hidden characters before retrying.
All rows say ERROR. A temporary problem such as a rate limit can cause an error. Read the status text and progress card. If the task paused at the allowance or shared daily capacity, wait for the reset and press Resume. The sidebar shows usage and the reset time. If the problem remains unclear, consult the documentation and include the status text when asking for help.
Results appear next to the wrong columns. MapRows puts new results to the right of the data, not necessarily immediately beside the address column. Check the selected sheet and follow the complete row across to its result. Keep the result headers and their MapRows: notes so later runs reuse them. If rows have been rearranged, compare the input and result on a copy before making further changes.
A status stays blank. Check that the row was included in the selected rows or all rows, and look at the progress card for a paused or unfinished task. If the sidebar was closed, reopen it and resume. Also check the correct result columns on the selected sheet. A genuinely blank input is described by EMPTY_INPUT, so a blank status alone does not explain what happened.
The result is in the wrong country or only names a town. Add verified location details and check Limit to a country. Compare the formatted address with the input and review match type and confidence using Everything output. If the result is still too broad, keep it for a human check rather than using it as a building location.
A corrected row still shows LOW_CONFIDENCE. The default skip includes that status, so the row was treated as done and not looked up again. Untick the skip checkbox on the Geocode tab, choose Selected rows with only the corrected rows highlighted, and run again. Then read the newly returned result. The underlying data may still be incomplete.
Frequently asked questions
Why are my addresses not found when I geocode them in Google Sheets?
An address may have a typo, missing city or ZIP code, extra unit text, or a place that is incomplete in the geocoder’s data. Check the selected input columns too. Correct the information you can verify and retry; some addresses still need a human check.
What does NO_MATCH mean in MapRows?
NO_MATCH means nothing was found for that input. Check the street, city, state and ZIP, remove unnecessary unit text from a helper column, and confirm that the intended columns are selected before retrying.
What does LOW_CONFIDENCE mean?
MapRows found a match with confidence below 0.6. It may have found only a street or town. Compare the formatted address with the input, review the match type and confidence, and decide whether the returned location is precise enough for your task.
How do I retry a low-confidence address after correcting it?
Skip rows already done skips both OK and LOW_CONFIDENCE rows. To run a corrected row again, untick the skip checkbox on the Geocode tab (labelled Skip rows already geocoded), choose Selected rows with only those rows highlighted, and press Geocode. Each row run again costs another lookup.
Why are all my rows showing ERROR?
An ERROR can indicate a temporary problem such as a rate limit. If the task paused because the allowance or shared capacity ran out, wait for the reset and press Resume. Check the progress card and the status text before trying again.
How do I restore a missing zero in a ZIP code?
If A2 contains the numeric value 2108 and the intended five-digit ZIP is 02108, use =TEXT(A2,"00000") in a helper column. Check the source first: the formula pads a number to five digits but cannot tell you whether the ZIP is correct.
Can I fix and geocode addresses without MapRows?
Yes. The cleaning and counting formulas in this guide work without MapRows. Our geocoding guide also describes a free Apps Script and the free Census batch geocoder for US addresses, including their limits and result checks.
Related
- How to geocode addresses in Google Sheets
- Split an address into columns in Google Sheets
- A latitude and longitude formula for Google Sheets
- Geocode a large list of addresses
- MapRows documentation
- All guides
Disclosure: we make MapRows, the Google Sheets add-on mentioned in this guide. The cleaning and counting formulas work without it, and our geocoding guide describes free Apps Script and Census methods.
Google Sheets and Google Workspace are trademarks of Google LLC. MapRows and Cellbrook are not affiliated with or endorsed by Google.