10 Best Tools for Turning a Spreadsheet Into a Map

Vintage compass and stopwatch on an old map with detailed street markings

Google’s own help pages tell My Maps users not to import a file with more than 2,000 rows. That one line decides a lot for anyone with a spreadsheet of addresses. A 300-row list fits almost anywhere. A 20,000-row list rules out most free tools before features even come up.

Every tool here geocodes a spreadsheet, matching each address to a place on the map, so the first number to know is the row count of the file itself.

1. Google My Maps: 2,000 Rows per Import

Google My Maps [1] is free with a Google account, and it pulls a Google Sheet straight into a map layer without a download step [2]. It also imports CSV, TSV, XLSX and KML files, as long as one column has addresses or latitude and longitude. Each import and each layer stops at 2,000 rows, and a whole map can have up to 10,000 places. After import, pins can be styled by any column, and the style rules carry over when a layer is replaced. There are no heat maps or territories. When the sheet changes, a user runs Reimport and merge by hand.

2. BatchGeo: Free Maps Kept for 30 Days

BatchGeo [3] needs no account to try. A user copies rows from Excel or Google Sheets, pastes them in and gets a pin map on Google Maps with its own shareable link. On the free plan the ceiling is time as much as rows. Free maps are kept for 30 days, with up to 1,000 geocodes a month and 100 map views. Grouping by a column colors and filters the pins. The $99-a-month Pro plan adds a heat map layer.

3. Maptive: 100,000 Locations per Data Set

Maptive takes a spreadsheet three ways: an uploaded Excel, CSV or TSV file, rows pasted with their headers, or a Google Sheet. It matches the location columns on its own, and the user confirms or corrects the match before the map builds. Each data set takes up to 100,000 locations, and a map has its own, separate limit of 200,000 markers. Maptive has no free plan. Its 10-day free trial needs no credit card, and after that a paid plan is required.

4. Mapme: 300 Locations per Map on Professional

Mapme [4] is a no-code builder for branded maps that go on a website, such as directories and event maps. Importing from Excel or a Google Sheet starts on the Professional plan, not Starter, and the location column can contain an address or latitude and longitude. Starter allows 30 locations per map, Professional 300 and Expert 500. Professional costs $55 a month billed yearly, or $90 month to month, for one published map. Map visits are capped at 10,000 a month on the self-serve plans.

5. Scribble Maps: Metered Geocoding, No Fixed Row Cap

Scribble Maps [5], a browser map maker built around drawing, imports CSV, Excel and Google Sheets files and flags any rows that fail to geocode. Rows with only a ZIP code, county or city still map. Its FAQ sets no fixed row cap and says most plans handle thousands of rows. Geocoding is metered instead, at 500 a month on Pro Basic and 5,000 a month on Pro Business. Pro Basic costs $14 a month prepaid annually or $19 month to month. Users can draw and add notes on top of the data.

Spreadsheet-to-Map Tools Compared by Row Limit

The ceilings below run from 250 free pins on EasyMapMaker to 100,000 locations in a single Maptive [6] data set.

Tool

Import routes

Published row or pin ceiling

After import

Free option

Google My Maps

Google Sheets, CSV, TSV, XLSX, KML

2,000 rows per import and per layer, 10,000 places per map

Styling by column

Free

BatchGeo

Paste or upload from any spreadsheet

1,000 free geocodes a month, Pro cap differs across its own pages

Grouping, shareable link, heat maps on Pro

Free plan, maps kept 30 days

Maptive

Excel, CSV, TSV upload, paste, Google Sheet

100,000 per data set, 200,000 markers per map

Full mapping toolset

10-day trial only

Mapme

Excel or Google Sheet (Professional and up)

30, 300 or 500 per map by plan

Branded website embeds

Trial, length not stated

Scribble Maps

CSV, Excel, Google Sheets, paste

No fixed cap, 500 to 5,000 geocodes a month

Drawing and notes

Free plan

ArcGIS Online

CSV and Excel

4,000 rows direct, more as a hosted layer

Full GIS

21-day trial

EasyMapMaker

Paste or drag an Excel file

250 to 30,000 pins per map

Filters, radius filter, heat map

Free up to 250 pins

Mapline

Paste or import Excel and CSV

Not published

Territories, routing

Free Starter plan

eSpatial

Excel and other exports

50,000 or 100,000 per dataset

Territory design

7-day trial

Felt

CSV, Excel, Numbers

10,000 geocoded addresses per upload

Heat maps, boundary matching

7-day Professional trial

6. ArcGIS Online: 4,000 Rows Straight to the Map

Map on wooden table with colorful push pins marking locations under soft lighting

ArcGIS Online [7], Esri’s browser-based GIS, lets an organizational account add up to 4,000 rows from a CSV directly to a map. Anything larger has to be published as a hosted feature layer, a stored dataset on Esri’s servers that maps can draw from. Public accounts can add only 250 features from a CSV, and geocoding a large file spends ArcGIS credits. A free 21-day trial comes with 400 credits and requires a business or government email. It is full GIS, so the learning curve is steeper than in a simple pin-map tool.

7. EasyMapMaker: 250 Free Pins, 30,000 at the Top

EasyMapMaker [8] lets a user paste spreadsheet rows into a table or drag in an Excel file. Its free Basic plan maps up to 250 pins, using an OpenStreetMap [9] geocoder that works at one address per second. Paid plans switch to Google geocoding at up to 90 a second. They also raise the ceiling to 1,500 pins on Pro at $29 a month, 15,000 on Premium at $59 and 30,000 on Enterprise at $99. Every map gets filters, a search box, a radius filter and a heat map.

8. Mapline: No Published Row Limit

Mapline [10] lets a user paste rows straight from a spreadsheet or import Excel and CSV files, and its free Starter plan needs no credit card and does not expire. Mapline does not publish its row or record limits. Its API documentation lists an error for reaching a dataset’s record limit, so a limit exists even though the number is not public. Once the pins are down, Mapline adds territories, radius circles and routing, plus drive-time polygons on its paid plans.

9. eSpatial: 50,000 Records per Dataset

eSpatial [11], sales territory software for teams, maps account lists uploaded from Excel. Its Mapping Pro plan allows 50,000 records per dataset, and the two higher plans take 100,000. Drive-time and radius polygons are included, capped at 200 drive-time buffers on every plan. Every plan needs at least three users, and prices start at $499 per user per year. A seven-day trial needs no credit card, though anyone signing up with a Gmail address has to contact eSpatial to start one.

10. Felt: 10,000 Geocoded Addresses per Upload

Felt [12] [13], a browser-based mapping platform, reads CSV, Excel and Numbers files and geocodes up to 10,000 addresses per upload by default, with more on Enterprise. A single layer can contain up to 50 million features. The free Personal plan cannot upload CSV files or be used for business, so business use starts with the seven-day Professional trial. Maps run in the browser and in a field app for iOS and Android.

Getting a Spreadsheet Ready for Its First Import

A few minutes of cleanup [14], done in this order, prevents most failed imports.

  1. Count the rows and compare the total with the ceiling of the tool you plan to use. A file over the limit has to be split, filtered or taken to a bigger tool. Several tools here also count geocodes per month, so one large import can use up a month’s allowance.
  2. Keep one header row, and split addresses into street, city, state and ZIP columns where the export allows it. Tools that match columns on their own still guess best from plain header names such as City and ZIP.
  3. Format the ZIP column as text. Spreadsheets often drop the leading zero [15] from ZIP codes in New England and New Jersey [16], and 02110 becomes 2110.
  4. Add a unique ID column, such as an account number, so a later re-import can update rows instead of duplicating them.
  5. Import 20 rows first. If they appear where they should, load the rest. If a few show up in the wrong state, check those rows for a missing city or ZIP before going further.

Leave a Reply

Your email address will not be published. Required fields are marked *