EZRoutePlanner
  • Google Sheets
  • Spreadsheets
  • Route planning

How to plan a route from Google Sheets

Sheets can hold your stops but can't put them in order. Here's how to go from a sheet of addresses to an optimized route, and back into the sheet in driving order.

EZRoutePlanner teamPublished 10 min read

The short answer

Google Sheets has no route planner built in, so plan the route in a route planner and keep the sheet as your list. Copy the address column, or download the sheet with File → Download → Microsoft Excel (.xlsx), then paste or import it into a planner such as EZRoutePlanner and press Optimize Route. Export the route to get each stop's number, and sort the sheet by it.

Built into Sheets
No routing, no map of addresses, no optimizing
Fastest way
Copy the address column and paste it into a route planner
Keep names as labels
Download as .xlsx and import the file
Back into the sheet
Export the route, then XLOOKUP the stop numbers and sort
Free
30 stops a route on EZRoutePlanner, no credit card
On this page
© Mapbox © OpenStreetMap

01

Can Google Sheets plan a route with multiple stops?

No. Google Sheets stores and sorts text, but it doesn't know where an address is or how the roads between two addresses connect, so it can't put stops in driving order. Sorting by ZIP code or street name groups some neighbors together and still sends you back and forth across town.

That leaves four ways to get from a sheet to a route. Most people want the first.

Ways to plan a route from a Google Sheet
MethodPuts stops in the best order?StopsBest for
Paste or import into a route plannerYes, in one click30 a route free on EZRoutePlanner, up to 200 on paid plansMost lists of 10 or more stops
A formula that builds a Google Maps linkNo, it drives the rows top to bottom11 places a link (start, 9 waypoints, end)A short list that's already in order
A Sheets add-on or Apps ScriptSome doDepends on the add-on or scriptTeams that need everything inside the sheet
Google My MapsNo2,000 rows per import, as pinsA map of pins, not a route
Ways to plan a route from a Google Sheet

02

How should you set up the sheet before you plan a route?

A route planner needs one thing from each row: an address it can find on a map. When a stop lands in the wrong place, the cause is almost always in the sheet, not the planner, so a few minutes here saves a wrong turn later.

Before you copy or download

  • One row per stop. A customer with two drop-offs gets two rows.
  • A full address on every row: number and street, city, state and ZIP. A street on its own can match the same name in another town.
  • The address in one column, or split into Street, City, State and ZIP. Either works with EZRoutePlanner's import.
  • ZIP codes stored as plain text (Format → Number → Plain text), so 02446 doesn't become 2446.
  • Unit and suite numbers in the address or their own column, not in a notes column.
  • Names, phone numbers and notes in their own columns, away from the address.

Need a single address column? =TEXTJOIN(", ", TRUE, B2, C2, D2&" "&E2) joins Street, City, State and ZIP in Sheets. Combining address columns has the one-cell ARRAYFORMULA version that fills the whole column.

Free toolAddress list cleanerPaste rows straight from your sheet and get one clean, de-duplicated address per line.

03

What's the fastest way to get a Google Sheet into a route planner?

Copy and paste. If the whole address sits in one column, you can go from sheet to optimized route in about a minute.

  1. 1

    Select the address column

    Click the first address below the header, then press Ctrl+Shift+Down (Cmd+Shift+Down on a Mac) to select down to the last row.

  2. 2

    Copy it

    Ctrl+C, or Cmd+C on a Mac.

  3. 3

    Paste it into EZRoutePlanner

    Open the planner, choose Quick Paste Multiple and paste. Every address becomes a pin on the map, and you can check them before you save.

  4. 4

    Optimize

    Create a route from the stops, set where it starts and press Optimize Route.

04

How do you import a Google Sheet with names and split address columns?

Download the sheet as a file and import that. The import reads the columns as they are, so there's nothing to merge first.

  1. 1

    Download the sheet

    In Google Sheets, choose File → Download → Microsoft Excel (.xlsx). Comma-separated values (.csv) works too, but it saves only the tab you're on.

  2. 2

    Import it

    In EZRoutePlanner, choose Spreadsheet Import and drop in the file, up to 20 MB. AI finds the address columns on its own, even when street, city and ZIP are split.

  3. 3

    Pick a label

    Choose one column, usually the customer or business name, as each stop's label. Phone numbers, notes and prices stay in your sheet.

  4. 4

    Check the pins

    Every row shows on the map before anything is saved, and rows with an uncertain match are listed first so you can fix them.

Repeated rows and addresses you've already saved are skipped, so importing next week's version of the sheet adds only the new customers. The free plan keeps 30 saved addresses; paid plans keep 200 to 10,000.

05

How do you put the stops from the sheet in the best order?

Press Optimize Route. EZRoutePlanner keeps your start where it is, can bring you back there for a round trip or pin a last stop, and reorders every stop between into the shortest drive it finds.

© Mapbox © OpenStreetMap
In the order listed63 mi · 2 hr 11 min
© Mapbox © OpenStreetMap
Optimized29 mi · 1 hr 11 min−55%
The same stops in the order a sheet listed them, then optimized: an example route on real roads in Kansas City.
  • More stops than one route holds? Free routes take 30 stops and paid routes up to 200. For several drivers or days, lasso each area into its own route; planning routes for multiple drivers shows how.
  • Driving it in Google Maps? The Google Maps export splits a long route into links of 10 stops, in the optimized order.
  • Sending it to someone else? Share the route as a link or QR code. It opens in the phone's browser with no app or login, and every stop has a Navigate button.

06

How do you sort a Google Sheet into route order?

Export the optimized route, add it to the sheet as a new tab, and look up each row's stop number. Then sort by that number. Your sheet keeps every column, notes and phone numbers included, now in the order the driver will visit.

  1. 1

    Export the route

    In EZRoutePlanner, choose Export and download Excel or CSV. Each row has the Route Name, Stop Number, Label and Address, then the coordinates, the distance from the previous stop and a Google Maps link.

  2. 2

    Add it to the sheet as a tab

    In Google Sheets, choose File → Import → Upload, pick the file and choose Insert new sheet(s). Rename the new tab Route.

  3. 3

    Look up each stop number

    In an empty column on your list, use the formula below. It finds the customer's name in the export and returns their stop number.

  4. 4

    Sort by the stop number

    Select the data, choose Data → Sort range → Advanced range sorting options, tick Data has header row and sort by the new column, A to Z.

Google Sheets: the stop number for the customer named in A2
=XLOOKUP(A2, Route!C:C, Route!B:B, "Not on route")
The same lookup with INDEX and MATCH, which works in any spreadsheet
=IFERROR(INDEX(Route!B:B, MATCH(A2, Route!C:C, 0)), "Not on route")

Planning several routes at once? Export them together, and the Route Name column says which driver or day each stop belongs to. =XLOOKUP(A2, Route!C:C, Route!A:A, "") fills a Route column, and sorting by route, then stop number, gives each driver their own block of rows.

08

Should you use a Google Sheets route planner add-on or Apps Script?

Only if the route has to be built inside the sheet itself. Route planner add-ons from the Google Workspace Marketplace write route columns into your sheet, and Apps Script, Google's scripting tool for Sheets, can ask Google's directions service to reorder a list of waypoints. Both work, with trade-offs:

  • Access to your data. An add-on asks to see and edit the spreadsheets it runs on, and many send the rows to their own service. Read the permission screen before you click Allow.
  • Limits and prices change. Stop caps, monthly runs and paid tiers differ by add-on and move often, so check the Marketplace listing before you build a routine on one.
  • Apps Script is code you maintain. Its Maps service has a setOptimizeWaypoints option that reorders stops, but you write and fix the script yourself, and Google limits how much a script can do each day.
  • You still can't see the route. A column of numbers doesn't show a pin in the wrong town or a leg that doubles back. A map does.

For most lists, a planner that takes the sheet as it is gets you there faster: nothing to install, no code, and every stop on a map before the route goes out.

09

How do you keep the sheet and the routes in step every week?

Keep the sheet as the master list and the planner as the map. Add new customers to the sheet, import the updated file, and only the new rows are added.

  • Saved routes stay put. Last week's Monday route is still there: add the new customer to it and optimize again.
  • Write the route back. A Route column filled from the export shows who visits which customer, right in the sheet.
  • Archive customers who pause for the season, so they're out of the way until they come back.

Visiting the same customers on a cycle? Planning weekly service routes covers giving each area a day, and the Excel route planner page covers every file the import takes.

Questions people ask

Does Google Sheets have a route planner?

No. Google Sheets has no mapping or routing feature, so it can't put addresses in driving order. Keep the list in Sheets and plan the route in a route planner: paste the address column or import the sheet as an Excel or CSV file, optimize, and export the order back.

Can I optimize a route from Google Sheets for free?

Yes. Copy the address column into a free route planner. EZRoutePlanner's free plan optimizes routes of up to 30 stops and saves 30 addresses, with no time limit and no credit card. Inside Sheets itself you'd need an add-on or a script.

How do I map addresses from Google Sheets?

Google My Maps can import a sheet straight from your Drive and drop a pin per row, up to 2,000 rows per import. For a route, download the sheet as .xlsx and import it into a route planner, which maps the pins and puts the stops in order.

How many addresses can I import from a Google Sheet?

EZRoutePlanner saves 30 addresses on the free plan and up to 10,000 on paid plans, from files up to 20 MB. One route holds 30 stops free and up to 200 on paid plans.

How do I sort a spreadsheet by route order?

Export the optimized route with its stop numbers, add the export to the sheet as a new tab, use XLOOKUP to pull each customer's stop number into your list, and sort by that column.

Can a Google Sheets formula create a Google Maps route?

It can build a directions link with HYPERLINK and ENCODEURL for up to 11 places, in the order of your rows. It can't reorder the stops, so sort the sheet into route order first, and keep in mind a phone browser shows only 5 of those places.

Will notes and phone numbers from my sheet come across?

No. EZRoutePlanner keeps each row's address and the one column you pick as its label, such as the customer name. Notes, phone numbers and gate codes stay in the sheet, which is a good reason to sort the sheet into route order for the driver.

Does this work with Excel and Apple Numbers too?

Yes. The import takes Excel and CSV files, so an Excel workbook imports as it is, and a Numbers file imports after File → Export To → Excel or CSV.

Plan your next route in minutes.

Paste your addresses or drop in a spreadsheet, optimize the order with one click, and send it to your phone. Free to start, no credit card.

Free plan. No credit card. Works in any browser.