Spreadsheet column reference
By Nathan ColeUpdated
This page lists every column Routing24 can read from a spreadsheet, sheet by sheet, with the header spellings it accepts, the format each cell expects, and example values.
Download template in any editor page's More menu downloads that entity's sheet with these headers, one example row, and a Documentation sheet for its columns. Download template on the Home page downloads a full example plan as a workbook. Its Documentation sheet covers every column.
Import from Excel or CSV walks through the upload and review.
A workbook has up to four data sheets:
- Orders: one row per order, with time windows, loads, Service duration, and tags.
- Depots: the places where routes start and end, and where vehicles reload.
- Vehicles: capacities, shifts, costs, and break rules.
- Addresses: standalone Address Book entries.
Three sections come first: the matching rules that apply to every sheet, the layout of the tables, and the time and duration formats used throughout.
How columns are matched
Routing24 recognizes a column by its header text, not by its position. These rules cover the matching:
- Any arrangement works. Only the header row matters.
- One canonical name, plus aliases. In the tables below, the name on the left is the canonical one: templates and exports write it. Every spelling listed under Aliases imports the same way.
- Routing24 ignores unrecognized columns. Extra columns of your own (notes, bookkeeping, formulas) change nothing on import.
User:columns contain custom data. A header likeUser: Regionis your own attribute, not a template field. Routing24 keeps its values with each row and writes them back in every export.- Only ids and addresses are required. An order needs an
Idand anAddress, and a depot needs both as well. An Address Book row needs anAddress, and a vehicle needs only anId. Every other column is optional, and an empty cell means "no limit" or "use the default".
How to read the tables
Each table row documents one column:
- The left cell shows the canonical header, with its accepted aliases underneath.
- The first line on the right gives the format, whether the column is required, and, where it applies, Import only or Export only. Everything else round-trips both ways.
- A PRO or STARTER pill marks a column that belongs to a paid plan. See Plans and billing.
- The lines below give what the column means, its rules, and one or two example values.
Routing24 generates the tables below from the same column definitions it uses to read and write workbooks. The Documentation sheet inside every export repeats the definitions for the sheets in that file, next to your data.
The tables here use kilometers and the 24-hour clock. Your own workbook
follows your location and browser. In the United States that means miles and
12-hour times (Cost, mi, 3:30pm). In most of Europe it means kilometers
and 24-hour times (Cost, km, 15:30). Both spellings import either way. You
can override the choice in Settings.
Time and duration formats
Times and durations appear on the Orders, Depots, and Vehicles sheets. Two rules cover all of them:
- Times (time windows, shifts, Open hours):
HH:MMin the 24-hour clock, like08:00or15:30. Import also reads8amand3:30pm, whichever clock your Settings use. - Durations (Service duration, Max duration): minutes as a plain
number (
45is 45 minutes), orH:MM(1:30is 90 minutes).
On import, a time cell may contain plain text in any of these shapes:
| You type | Read as |
|---|---|
08:00, 8:00 | 08:00 |
8 | 08:00 (bare hour) |
8:00:30 | 08:00:30 (seconds allowed) |
8am, 8 AM, 3:30pm | 08:00, 15:30 |
12am / 12pm | midnight / noon |
Write times in one of the shapes above. Routing24 does not recognize a
shape such as 8h30 and treats the cell as empty. Duration columns follow
the same rules, plus the rule that a plain number is minutes.
Exports write the columns marked Format: Time * as a real
Excel time value,
not as text. Excel stores a time as a fraction of a day: 12:00 is the number
0.5 and 08:00 is 0.333…. The cell's number format is what displays it as
08:00. That is why a time cell may look different after you change the
column format, or show as a decimal if you clear the formatting. Real time
values sort correctly and work in formulas such as =B2-A2 for a window's
length.
On import, Routing24 also accepts the plain-text shapes in the table above.
Distance units follow your Settings: Cost, km is spelled Cost, mi on
an imperial profile. Both spellings import on either profile.
Day offsets: times on a later day
A time column says what time, never which day. For multi-day plans, each
time column has a paired ... day column that sets the day, counted from
the start of the plan. An empty cell or 0 is the first day, 1 the next
day, 2 the one after.
An order open from 6pm until 2am the following morning uses these values:
| Open from | Open from day | Open to | Open to day |
|---|---|---|---|
18:00 | (empty) | 02:00 | 1 |
Without the 1, the window runs from 18:00 to 02:00 on the same day and ends
before it begins. The review dialog reports Row will be skipped. The order
does not import.
The Excel export writes the day the same way: a cell containing 1
displays as +1 days.
The pairing works everywhere a time appears: vehicle shifts
(Shift end day), depot Open hours, an order's Release time
(Ready from day), and each alternative window.
Address columns (Orders, Depots, and Addresses sheets)
Every sheet that contains a place uses the same five columns to state its location. Give an address, coordinates, or both. Routing24 geocodes an address without coordinates during import.
| Column | Meaning |
|---|---|
| AddressAliasesAdress | Format: Text·Required Street address in free format. Address will be geolocated automatically during Excel import if coordinates are not provided. If address is not known, a unique string and geographical coordinates should be used instead. Example: |
| AreaAliasesCity | Format: Text·Optional Address country, state, city, or area name in free format. Can be specified in addition to address to increase address geolocation quality. Example: |
| LatAliasesLatitude | Format: Number·Optional Address latitude. When used, must be defined together with "Lng". If omitted, the address will be geolocated automatically during Excel import. Example: |
| LngAliasesLonLongitude | Format: Number·Optional Address longitude. When used, must be defined together with "Lat". If omitted, the address will be geolocated automatically during Excel import. Example: |
| LocationAliasesCoordinatesLat/Lng | Format: Text·Optional·Import only Address geo coordinates as "Latitude, Longitude" string. This column can be defined in import file instead of two separate columns "Lat" and "Lng". This format is useful to copy-paste coordinates from Google Maps™ or another online map. Example: |
Orders sheet
The Orders sheet contains one row per order. Beyond the id and address, the columns cover loads and transfers, time windows, Service duration, priority, and the tags that decide which vehicle may serve the order.
| Column | Meaning |
|---|---|
| IdAliasesCode | Format: Text·Required A unique order identifier. Any unique string in free format. Example: |
| Order typeAliasesTransfer typeOrder kind | Format: Text·OptionalPRO What this order is: "depot" (a regular order served from the depot, the default), or one end of a site-to-site transfer: "pickup" or "delivery". A "depot" order is served from the depot: the load in "Delivery" is loaded at the depot and delivered to the site, and the load in "Pickup" is picked up at the site and brought back to the depot (reverse logistics). Leave the column blank (or "depot") for this regular kind of order. A "pickup" or "delivery" order is one end of a load moved between two sites: the load is picked up at the "pickup" order and delivered to the "delivery" order by the same vehicle on the same route, pickup first. Give both rows the same "Transfer id" to link them into one pair. Example: |
| Transfer idAliasesTransfer | Format: Text·OptionalPRO The shared id that links the pickup row and the delivery row of one site-to-site transfer. Set the same id on both rows. Rows sharing a transfer id form one transfer: one with "Order type" = "pickup" and one with "Order type" = "delivery". The load is then picked up at the pickup site and delivered to the delivery site on the same route; the "Pickup" amount must equal the linked "Delivery" amount. Several rows with the same role are alternative locations for that end (the solver serves exactly one per role). Leave blank for a regular "depot" order: it is served from the depot and has no linked partner. Example: |
| Pickup | Format: Number·Optional Load to be picked up from this stop. Defined using the same units as vehicle capacity, (weight, volume, items, seats). This column is the plan's FIRST load unit; additional declared units have their own "Pickup, <unit>" columns (see that column). If not defined, no load is picked up at this stop. For a regular ("depot") order the load is brought back to the depot; for a "pickup" transfer order (see "Order type") it is carried to the linked delivery order. The load to be picked up must fit into one of the available vehicles. The vehicle's capacity must be greater than or equal to the load size. Example: |
| DeliveryAliasesQuantity | Format: Number·Optional Load to be delivered to this stop. Defined using the same units as vehicle capacity, (weight, volume, items, seats). This column is the plan's FIRST load unit; additional declared units have their own "Delivery, <unit>" columns (see that column). If not defined, no load is delivered to this stop. For a regular ("depot") order the load is loaded at the depot; for a "delivery" transfer order (see "Order type") it arrives from the linked pickup order. The load to be delivered must fit into one of the available vehicles. The vehicle's capacity must be greater than or equal to the load size. Example: |
| Priority | Format: Number·Optional Relative importance of serving this order (1 to 1000). Every order is optional. When the fleet cannot serve all of them, higher-priority orders are kept and lower-priority ones are dropped first. Defaults to 1 when not set. Use a large value (e.g. 1000) for "serve this unless physically impossible". Example: |
| Open fromAliasesOpen at | Format: Time *·Optional Site time window start. Earliest time when the job can be started at this site. If not defined, the job can be started at any time. Add "Open from 2".."Open from 4" (+ matching "Open to N") columns for alternative delivery windows. Example: |
| Open from day | Format: Number·Optional Relative day of the site time window start. If not defined, time window starts on the same day. For value of "1", time window starts on the +1 day (next day), etc. Example: |
| Open toAliasesOpen until | Format: Time *·Optional Site time window end. Latest time when the job can be started at this site. If not defined, the job can be started at any time after time window start. Example: |
| Open to day | Format: Number·Optional Relative day of the site time window end. If not defined, time window ends on the same day. For value of "1", time window ends on the +1 day (next day), etc. Example: |
| Open from 2 .. Open from 4AliasesOpen at 2Open at 3Open at 4 | Format: Time *·Optional Start of an additional delivery window. An order with several windows is delivered within exactly ONE of them. Up to 4 windows per order: "Open from 2".."Open from 4" with the matching "Open to 2".."Open to 4". Example of two windows: "Open from" = 08:00, "Open to" = 10:00, "Open from 2" = 16:00, "Open to 2" = 18:00: the order is delivered 08:00-10:00 OR 16:00-18:00. Example: |
| Open from 2 day .. Open from 4 day | Format: Number·Optional Relative day of an additional delivery window start. If not defined, the window starts on the same day. Example: |
| Open to 2 .. Open to 4AliasesOpen until 2Open until 3Open until 4 | Format: Time *·Optional End of an additional delivery window. See "Open from 2". Example: |
| Open to 2 day .. Open to 4 day | Format: Number·Optional Relative day of an additional delivery window end. If not defined, the window ends on the same day. Example: |
| Job timeAliasesService time | Format: Number·Optional Duration of the job or service at the stop, minutes. If not defined, the vehicle will depart from the stop immediately after arrival. Example: |
| Ready fromAliasesRelease atReady at | Format: Time *·Optional Depot release time for the site load. Time when the load is ready to be picked up at the depot. If not defined, load is available for pick up at depot from the opening time. Example: |
| Ready from dayAliasesRelease at dayReady at day | Format: Number·Optional Relative day of the depot release time. If not defined, release time is on the same day. For value of "1", release time will be on +1 day (next day), etc. Example: |
| Max time in vehicleAliasesShelf lifeMax ride time | Format: Number·OptionalPRO Max time in vehicle (shelf life), minutes. On a plain order, service must start within this many minutes of the vehicle leaving the depot on the trip that serves it, the departure shown in the plan. The planner delays that departure where doing so shortens the time on board, so only unavoidable waiting counts. A "Ready from" time keeps the vehicle from leaving earlier, it does not start the clock: a vehicle leaving at 10:00 under a value of 90 must start service by 11:30, whatever "Ready from" says. The bound covers the "Delivery" load only: a "Pickup" load boards at the stop and stays on board to the depot, a span this bound does not cover. A plain order that sets both a "Pickup" load and this column goes unassigned, reported as "Sets a field that does not apply to this kind of order". On a linked (pickup & delivery) order, the bound instead limits the ride time from pickup to delivery. The planner delays loading where that shortens the ride, so only unavoidable waiting counts, and a reload does not reset the clock. Set the same value on every end of the transfer. A driver break taken inside the bounded stretch counts toward it, on either kind of order, and break placement avoids that stretch where it can. On a linked order the extra time is charged against "Max ride overtime", and beyond that allowance the bound is hard. A plain order has no allowance, so an order over the bound goes unassigned. Leave blank for unlimited. Example: |
| Max ride overtimeAliasesRide overtime allowance | Format: Number·OptionalPRO Max ride overtime (linked orders only), minutes. Linked (pickup & delivery) orders only: ride time in minutes past "Max time in vehicle" that is still allowed, priced by the vehicle's "Cost, ride overtime hour" (Vehicles sheet). Beyond this allowance the bound is hard. Requires a "Max time in vehicle" to extend, and does not apply to a plain order. Set the same value on every end of the transfer. Leave blank for no allowance (the bound is hard). Example: |
| Required tagsAliasesTags required | Format: Text·OptionalPRO Tags a vehicle must carry to serve this order. A comma-separated list of tags. A vehicle may serve this order only if it carries every one of these tags (see the vehicle "Tags" column). Example: |
| Forbidden tagsAliasesTags forbidden | Format: Text·OptionalPRO Tags a vehicle must NOT carry to serve this order. A comma-separated list of tags. A vehicle carrying any of these tags may not serve this order. Example: |
| GroupAliasesAlternative group | Format: Text·OptionalPRO Alternative order group name. Orders sharing a group name are alternatives: the solver serves at most one of them (whichever fits best) and leaves the rest as "not chosen" rather than unassigned. Leave blank for a standalone order. Example: |
| No breakAliasesNo breaks | Format: Text·Optional Driver breaks: "Yes" forbids scheduling a driver break while waiting at this stop. Blank allows breaks (the default). Example: |
| Sequence groupAliasesSequence | Format: Text·OptionalPRO Sequence group name: these orders run together, in order. Orders sharing a sequence group are served all-or-none, by ONE vehicle, in non-decreasing "Sequence rank" order (other stops may come between them). 2 to 16 orders per group. A member cannot also be a transfer end or an alternative-location candidate, and has one service window. Goods move along the run using the members' own "Pickup" and "Delivery" amounts: a pickup at one stop supplies the deliveries of later-ranked stops, so a run picking up 5 and then dropping 3 and 2 leaves the depot empty and peaks at 5 on board. Runs may span reloads: cargo picked up on the run stays on board through them. Leave blank for an unconstrained order. Example: |
| Sequence rankAliasesSequence order | Format: Number·OptionalPRO Position within the sequence group (lower runs first). A non-negative whole number; orders with equal ranks may run in any order relative to each other. Ignored without a "Sequence group". Example: |
| Load classAliasesProduct class | Format: Text·OptionalPRO Product class for vehicle-level segregation. Which classes may not share a route is set per vehicle in the Vehicles sheet's "Do not mix" column: a vehicle never serves two classes of one of its groups on one route (reload trips included). A class listed in no vehicle group costs nothing. Both ends of a transfer must carry the same class. Leave blank for a classless order (never conflicts). Example: |
| Unplanned | Format: Text·Optional·Export only Why this order was left unplanned (solution export only). Present only on an exported solution; blank when the order was served. Not read on import. Example: |
Every order row also uses the address columns above. What these fields do to a route is covered per topic:
- Time windows, service time, priority, and load covers the per-order rule columns.
- Pickup & delivery transfers covers the transfer columns.
- Alternative pickup & delivery locations covers the alternative-group columns.
- Order sequences covers the sequence columns.
Depots sheet
The Depots sheet contains one row per depot: its id and address, Open hours, and the Service duration each visit takes.
| Column | Meaning |
|---|---|
| IdAliasesCode | Format: Text·Required A unique identifier for the depot. Example: |
| Handling timeAliasesService time | Format: Number·Optional Handling time spent at the depot on each visit (load/unload). Enter minutes (e.g. 15) or an HH:MM duration. If not defined, no handling time. Example: |
| Open fromAliasesOpen at | Format: Time *·Optional Depot opening time. Earliest time a vehicle may depart from / arrive at it. If not defined, the depot is open at any time. Example: |
| Open from day | Format: Number·Optional Relative day of the depot opening time. For value of "1", opening is on the +1 day (next day), etc. Example: |
| Open toAliasesOpen until | Format: Time *·Optional Depot closing time. Latest time a vehicle may depart from / arrive at it. If not defined, the depot is open at any time. Example: |
| Open to day | Format: Number·Optional Relative day of the depot closing time. For value of "1", closing is on the +1 day (next day), etc. Example: |
| No breakAliasesNo breaks | Format: Text·Optional Driver breaks: "Yes" forbids scheduling a driver break while waiting at this depot (including reload stops). Blank allows breaks (the default). Example: |
Every depot row also uses the address columns above.
Vehicles sheet
The Vehicles sheet contains one row per vehicle type: capacity and count, start and end depots, shift times, costs, and columns for tags, route limits, and driver breaks.
| Column | Meaning |
|---|---|
| IdAliasesCode | Format: Text·Required A unique identifier for the vehicle type. Example: |
| Capacity | Format: Number·Optional Vehicle capacity. Total load a vehicle can carry, in user-defined units (e.g., weight, volume, items, seats). This column is the plan's FIRST load unit; additional declared units have their own "Capacity, <unit>" columns (see that column). If not defined, the vehicle will have unlimited capacity. The vehicle capacity must be greater than or equal to each order's load. Example: |
| CountAliasesAvailable | Format: Number·Optional Total number of vehicles of this type available for planning. If not defined, only one vehicle of this type will be available. Example: |
| Start depotAliasesStart depot id | Format: Text·Optional Identifier of the depot where the vehicle starts its route. The value must match the ID of a depot defined in "Depots". If not defined, vehicle starts its route from the first order. Example: |
| Reload depotsAliasesReload at | Format: Text·OptionalPRO Depots this vehicle may reload at mid-route (comma-separated depot ids). Setting this (or "Max reloads") enables multi-trip: the vehicle can return to one of these depots to unload/reload and keep serving orders. If left empty while "Max reloads" is set, the vehicle reloads at its own start depot. Example: |
| End depotAliasesEnd depot id | Format: Text·Optional Identifier of the depot where the vehicle ends its route. The value must match the ID of a depot defined in "Depots". If not defined, vehicle ends its route at the last order. Example: |
| Cost, fixedAliasesFixed cost | Format: Number·Optional Vehicle fixed cost. Added to the total cost of the route once, when vehicle of this type is selected for a route. Example: |
| Cost, kmAliasesCost, miDistance cost | Format: Number·Optional Vehicle distance cost per km. Added to the total cost of the route for each kilometer a vehicle of this type travels. An empty cell means 0. When no vehicle in the plan has a distance, hourly or load-distance cost, the optimizer minimizes distance and route time at default rates of 1 per km plus 1 per hour. Example: |
| Cost, hourAliasesTime cost | Format: Number·Optional Vehicle time cost per hour. Added to the total cost of the route for each hour a vehicle of this type spends on the route. An empty cell means 0. Note that the vehicle's time on route includes not only travel time but also any job and waiting time. Example: |
| Cost, stopAliasesStop cost | Format: Number·Optional Vehicle cost per stop. Added to the total cost of the route for each stop the vehicle makes, excluding depot and reload visits. A pickup and its linked delivery count as two stops. Example: |
| Cost, overtime hourAliasesOvertime cost | Format: Number·OptionalPRO Vehicle overtime cost per hour, in addition to the time cost per hour. Charged on top of the regular time cost for each hour of overtime (time worked beyond the max duration, up to the max overtime). If overtime is allowed but this is left empty, it defaults to the time cost per hour, or to 1 per hour when that is 0 or empty, so overtime is never free. An explicit 0 makes overtime free. Example: |
| Cost, ride overtime hourAliasesRide overtime cost | Format: Number·OptionalPRO Cost per hour of a linked (pickup & delivery) order's ride time inside its ride overtime allowance. Charged for ride time past a linked order's "Max time in vehicle", up to its "Max ride overtime" allowance (see the Orders sheet). Beyond the allowance the bound is hard. A driver break taken between the pickup and the delivery counts as ride time and is charged the same way. Left empty or 0, that allowance is free. Example: |
| Load cost, kmAliasesLoad cost, miLoad distance cost | Format: Number·OptionalPRO Cost per unit of load carried per km (or mile), charged on every leg for the load on board. Each leg charges the load leaving its origin times the leg length, so heavier cargo is steered onto shorter paths and dropped early. Models load-dependent fuel or refrigeration burn. Counts as pricing the fleet, like the distance and hour rates. Left empty or 0, carriage is free. Example: |
| Shift startAliasesStart at | Format: Time *·Optional Vehicle shift time window start. Earliest time when the vehicle can start its shift. If not defined, the shift can start at any time. Example: |
| Shift start dayAliasesStart day | Format: Number·Optional Relative day of the shift time window start. If not defined, time window starts on the same day. For value of "1", time window starts on the +1 day (next day), etc. Example: |
| Shift endAliasesEnd at | Format: Time *·Optional Vehicle shift time window end. Latest time when the vehicle can end its shift. If not defined, the shift can be ended at any time. Example: |
| Shift end dayAliasesEnd day | Format: Number·Optional Relative day of the shift time window end. If not defined, time window ends on the same day. For value of "1", time window ends on the +1 day (next day), etc. Example: |
| Latest startAliasesStart by | Format: Time *·Optional Latest time the vehicle can start its shift (leave the depot). The vehicle can still work until the shift end. Distinct from the shift end: it caps only when the vehicle may start, not when it must finish. Must be between the shift start and shift end. If not defined, there is no latest-start limit (equivalent to the shift end). Example: |
| Latest start day | Format: Number·Optional Relative day of the latest shift start. If not defined, the latest start is on the same day. For value of "1", the latest start is on the +1 day (next day), etc. Example: |
| Max durationAliasesMax shift duration | Format: Number·OptionalPRO Maximum duration of a vehicle shift. Total time a vehicle of this type may spend on a route (travel + service + wait). If not defined, the shift duration is unlimited. Enter minutes (e.g. 480) or an HH:MM duration (e.g. 8:00). Example: |
| Max overtime | Format: Number·OptionalPRO Maximum overtime allowed on top of the max duration, at additional cost. Extra working time a vehicle may spend beyond the max duration, billed at the overtime cost per hour. If not defined or 0, no overtime is allowed. Enter minutes (e.g. 30) or an HH:MM duration (e.g. 0:30). Example: |
| TagsAliasesCapabilities | Format: Text·OptionalPRO Capabilities this vehicle carries (comma-separated). Free-form tags matched against order "Required tags" / "Forbidden tags". A vehicle may serve an order only if it carries every required tag and none of the forbidden tags. Example: |
| Do not mixAliasesSegregated classesIncompatible classes | Format: Text·OptionalPRO Product classes this vehicle must never carry together: ";" separates groups, "," separates classes within a group. Each group lists order "Load class" values that must never share one route of this vehicle (reload trips included). Groups are independent: "frozen, dry; fish, dairy" forbids frozen with dry and fish with dairy, but allows frozen with fish. A group needs at least two distinct classes: smaller groups are ignored with a warning. A class that no order sets has no effect. Leave blank to allow any mix on this vehicle. Example: |
| Max reloadsAliasesReloads | Format: Number·Optional Maximum number of mid-route reloads (multi-trip). Multi-trip is on by default. The vehicle may return to a depot to reload and continue (a value of N allows N reloads, i.e. up to N + 1 trips). Leave empty for unlimited reloads (the solver self-limits). Set to 0 for a single trip (no reloads). Example: |
| Max distance, kmAliasesMax distance, mi | Format: Number·OptionalPRO Maximum route distance, in kilometers. Maximum distance a vehicle of this type may travel on a route. If not defined, unlimited. Example: |
| Force allowAliasesForce allow orders | Format: Text·OptionalPRO Order ids this vehicle may serve regardless of tags (comma-separated). Overrides tag compatibility for these orders only. "Force deny" wins over "Force allow". Example: |
| Force denyAliasesForce deny orders | Format: Text·OptionalPRO Order ids this vehicle may NOT serve regardless of tags (comma-separated). Overrides tag compatibility for these orders only. Wins over "Force allow". Example: |
| Break ruleAliasesBreaks | Format: Text·OptionalPRO Driver-break rule: "EU" (45 min before exceeding 4.5 h driving, splittable 15+30), "US" (30 min interruption after 8 h driving; stops of 30 min or more count), or "Custom" (define the rule with the "Break ..." columns). "EU" and "US" expand to the legal constants and ignore the detail columns. "Custom" reads them: "Break max driving, h", "Break duration", "Break split" and "Break service counts". Leave blank for no driving-triggered breaks (fixed breaks may still be set). At most one driving rule per vehicle. Example: |
| Break max driving, hAliasesBreak after driving | Format: Number·OptionalPRO Custom break rule: a break is required before the driver exceeds this much accumulated driving (hours, decimals allowed). Read only when "Break rule" is "Custom". Example: |
| Break durationAliasesBreak minutes | Format: Number·OptionalPRO Custom break rule: length of the required break. Read only when "Break rule" is "Custom". Enter minutes (e.g. 45) or an HH:MM duration (e.g. 0:45). Example: |
| Break split | Format: Text·OptionalPRO Custom break rule: optional split into two ordered parts, as "first+second" minutes (e.g. "15+30"). Only completing the second part resets the driving clock. Read only when "Break rule" is "Custom". Leave blank for an unsplittable break. Example: |
| Break service countsAliasesService counts as break | Format: Text·OptionalPRO Custom break rule: whether time at stops (service) counts toward the required break, US-style. "Yes" or blank. Read only when "Break rule" is "Custom". Example: |
| Fixed break from, Fixed break 2 from | Format: Time *·OptionalPRO Fixed break (e.g. lunch): earliest clock time the break may start. The break must START within the from-to window. Set "from", "to" and the duration together. Example: |
| Fixed break to, Fixed break 2 to | Format: Time *·OptionalPRO Fixed break: latest clock time the break may start. Set "from", "to" and the duration together. Example: |
| Fixed break duration, Fixed break 2 duration | Format: Number·OptionalPRO Fixed break: pause length. Enter minutes or an HH:MM duration. Set "from", "to" and the duration together. Example: |
| Driving limit, hAliasesPeriod driving limit | Format: Number·OptionalPRO Driving-hours budget per period (e.g. 56 per week under EU rules). The route is capped at the REMAINING hours: this limit minus "Hours driven". Example: |
| Hours drivenAliasesHours already driven | Format: Number·OptionalPRO Hours this driver has already driven in the current period (tracked outside routing24, e.g. from the tachograph). Never copied between vehicles; per-driver state. Example: |
| Speed factorAliasesSpeed | Format: Number·Optional How fast this vehicle drives compared with the map travel times: 1 = as the map says, 0.5 = twice as long on every leg, 2 = half. Between 0.1 and 5. If not defined, 1. Scales driving time only, not service or break time; route duration limits, break triggers and the cost per hour follow the scaled time. Example: |
| CurbsideAliasesCurbside stops | Format: Text·Optional Yes = this vehicle stops on the driving side of the street at every stop, never crossing the road to a stop on the far side. Travel times and route geometry are computed with the curbside rule. If not defined, either side. Example: |
The rules behind these columns are documented one topic per page:
- Shifts, working hours, and route limits covers the shift and route-limit columns.
- Vehicle costs covers the cost columns.
- Tags covers the compatibility columns.
- Multiple depots, open routes, and reloads covers the depot and reload columns.
- Driver breaks covers the break columns.
Addresses sheet
The Addresses sheet contains standalone Address Book entries. It uses exactly the
five address columns
listed at the top: Address (required), Area, Lat, Lng, and Location.
Next step
Download a template from an editor page's More menu: it contains the headers of that entity's sheet and one example row to fill in. Then see Import from Excel or CSV for the review flow.
FAQ
Do columns have to be in a specific order?
No. Routing24 recognizes a column by its header text, not by its position, so any arrangement works and only the header row matters. Each canonical header has accepted aliases that import the same way, and unrecognized columns of your own, notes or formulas, change nothing on import.
Which columns are required?
Only ids and addresses are required. An order needs an Id and an Address, a depot needs both as well, an Address Book row needs an Address, and a vehicle needs only an Id. Every other column is optional, and an empty cell means no limit or use the default.
How do I write times and durations in the file?
Times such as time windows, shifts, and Open hours use HH:MM in the 24-hour clock, like 08:00 or 15:30; import also reads 8am and 3:30pm, whichever clock your Settings use. Durations such as Service duration are minutes as a plain number, 45 is 45 minutes, or H:MM, 1:30 is 90 minutes.
Can I keep my own columns in the file?
Yes. Routing24 ignores unrecognized columns, so notes, bookkeeping, and formulas survive the import untouched. A header like User: Region is your own attribute: Routing24 keeps its values with each row and writes them back in every export, so custom data round-trips with the plan.