Give every recurring customer a cycle and a first due date, and work out each week’s due visits from those two facts, never from last week’s schedule. Every-N-weeks customers are due when the number of whole weeks since the first due date divides evenly by N. Monthly, quarterly and twice-a-year customers are due when their date’s monthly repeat lands in the week. Balance A and B weeks by choosing first due dates on purpose.
Why copying last week breaks
When the plan for next week starts as a copy of this week, every skip, holiday and one-off move carries forward. An every-other-week customer moved by a day drifts into the wrong week; a monthly customer skipped for a closure falls off entirely. Anchoring to a first due date fixes this, because each week is calculated fresh.
Every other week (biweekly) and every N weeks
Count whole weeks from the customer’s first due date. If the count divides evenly by N, the customer is due.
| Week of | Weeks since first due | Due? |
|---|---|---|
| Nov 2 | 0 | Yes |
| Nov 9 | 1 | No |
| Nov 16 | 2 | Yes |
| Nov 23 | 3 | No |
| Nov 30 | 4 | Yes |
In Excel or Google Sheets, with the Monday of the week in B2, the first due date in K2 and N in N2:
=MOD(INT((B2-K2+6)/7), N2)=0
The +6 makes a customer due in the week their first date falls in, even if it’s a Thursday.
Monthly: by date or by weekday
Decide which kind of monthly each customer is:
- By date (“the 10th”) is simple but drifts around the week: the 10th is a Tuesday one month and a Saturday the next.
- By weekday (“second Tuesday”) keeps the usual day, which most commercial customers prefer, but some months have a fifth week the customer won’t get.
For “by date” cycles (monthly, quarterly, twice a year, yearly), the customer is due when the repeat of the first due date lands in the week. With the step in months in M2 (1, 3, 6 or 12):
=EDATE(K2, INT(((YEAR(B2)-YEAR(K2))*12+MONTH(B2)-MONTH(K2))/M2)*M2) gives the repeat date for the month the week starts in; check it and the same formula for B2+6 (the week can cross into the next month).
The free template has both formulas built into its This week tab, already tested.
Balance A weeks and B weeks
If every biweekly customer started the same week, week A is full and week B is empty. When you onboard customers, alternate their first due dates between the two weeks, and check the count per day before you commit:
| Day | Week A | Week B |
|---|---|---|
| Monday | 4 | 4 |
| Tuesday | 5 | 4 |
| Wednesday | 4 | 5 |
| Thursday | 4 | 4 |
| Friday | 3 | 3 |
Holidays, closures and skips
- Customer closed that week: skip the visit, don’t move the anchor. The next visit stays on cycle.
- Your holiday: move the visit within the same week if you can (a day earlier or later), and keep it on its cycle.
- Customer asks for a one-off date: move that visit only, and record why.
- Customer changes frequency: change the cycle and set a new first due date, so the history stays clear.
How Crewtide handles cycles
In Crewtide each customer has a visit cycle and usual days, and every week is generated from them: weekly, set weekdays, every N weeks, monthly by date or weekday, quarterly, twice a year, seasonal and one-offs. Closed days, skips and moves apply to that week only. You never flip customers on and off by hand.

Questions
How do I schedule every other week customers?
Give each customer a first due date and count whole weeks from it; they’re due every week where that count is even. Don’t base next week on this week’s schedule.
Is biweekly the same as twice a month?
No. Biweekly (every other week) is 26 visits a year; twice a month is 24. Agree which one the customer is paying for.
How do I keep A and B weeks balanced?
Alternate new customers’ first due dates between the two weeks and check the count per day before you add more.
Should monthly service be by date or by weekday?
By weekday keeps the usual day, which most commercial customers prefer. By date is simpler but moves around the week.
What happens to a biweekly customer after a skipped week?
Nothing, if the schedule is anchored to a first due date: the next visit stays on cycle.