Create recurring routes
Repeat the same run each week in Upper by duplicating a route to a new date, or auto-generate routes on a schedule with a recurring template on Optimize and Enterprise.
If you run the same route week after week — lawn care, pet services, waste pickup, regular delivery rounds — you don't have to rebuild it from scratch each time. Upper gives you two ways to repeat a run: duplicate an existing route onto a new date, or, on Optimize and Enterprise plans, set a route to regenerate automatically on a schedule.
Why this matters
Recurring work means recurring routes. Rebuilding the same stops every Monday is wasted dispatch time. Duplicating yesterday's run takes under a minute and keeps every stop's details intact, and an auto-recurring schedule removes the manual step entirely.
Before you start
- Plan requirement — Duplicating a route is available on every plan, including Starter. Auto-recurring schedules (a route that regenerates on its own) are part of the Optimize and Enterprise plans.
- Permissions — You need create-route permission and access to Route Plan.
- A source route — Duplication needs an existing route in Route Plan to copy from.
Your workspace may show Technician and Service where this article says Driver and Delivery. The labels are configurable per workspace; the steps are identical either way.
How to choose
| Your situation | Best approach |
|---|---|
| Same stops most weeks, with small changes | Duplicate the previous route |
| A one-off copy onto a future date | Duplicate the route |
| A run that repeats on a fixed schedule and you're on Optimize or Enterprise | Set up an auto-recurring schedule |
Method 1 — Duplicate an existing route
Duplicating creates a brand-new route from a route you already have. The copy is named "Copy [route name]", starts unoptimized and unassigned, and you set its date as part of the copy.
Open Route Plan
Go to Route Plan in the left sidebar and find the route you want to repeat.
Open the route's action menu
Click the three-dot (…) action menu next to that route.
Choose Duplicate Route
Select Duplicate Route.
Pick which stops to carry over
Choose the stops to include in the copy:
| Option | What it copies |
|---|---|
| All | Every stop from the source route |
| Pending Stops | Stops not yet attempted |
| Delivered Stops | Successfully completed stops only |
| Skipped/Missed Stops | Failed deliveries only |
Set the new route date
Pick the Route Date for the copy.
Create the copy
Confirm to create the duplicate. It appears in your route list, ready to optimize and dispatch.
For day-to-day repeats, duplicating yesterday's route onto today is the fastest path. The duplicate starts unassigned, so optimize it and assign drivers before you dispatch.
Method 2 — Auto-recurring schedules (Optimize and Enterprise)
On Optimize and Enterprise plans, Upper can regenerate a route automatically on a schedule, so a weekly or monthly run is created for you without manual duplication. You set the route to recur and choose how often it repeats and when it should stop.
Turning a recurring schedule off deactivates it rather than deleting it — routes already generated stay as they are, and you can reactivate the schedule later.
The exact in-app labels and defaults for the recurrence options are being confirmed and aren't documented here yet. If you're on Optimize or Enterprise and want this set up, contact support@upperinc.com.
Common scenarios
- Same route, next day — Duplicate yesterday's route, pick All, set today's date, then optimize and dispatch.
- Reattempt failed stops tomorrow — Duplicate, pick Skipped/Missed Stops, set the new date, and assign the driver who knows the area.
- Weekly delivery round — Duplicate last week's run onto the new date and adjust stops as your customer list shifts.
Troubleshooting
Related
Create a new route plan
Create a route in Upper Route Planner: add stops, assign drivers, and optimize the sequence — all from one route builder screen, ready to dispatch.
Delete routes
Delete a route in Upper from the Action menu on Route Plan. Deletion is permanent, so export the route first if you need the records.