Calrows
Updated 4 October 2026
Most small teams already plan the rota in a spreadsheet. The problem is getting each shift onto the calendar people actually look at, and keeping it right when the rota changes. Here is how to do it without retyping anything.
One row per shift works best. Use a header row like this:
| Title | Start | End | Guests | Location | Color |
|---|---|---|---|---|---|
| Front desk: Maya | 2026-10-12 09:00 | 2026-10-12 17:00 | [email protected] | Main store | blue |
| Front desk: Leo | 2026-10-12 13:00 | 2026-10-12 21:00 | [email protected] | Main store | green |
| Stock count | 2026-10-13 07:00 | 2026-10-13 09:00 | [email protected], [email protected] | Back room | orange |
Start and End should be real date-time cells. Put several people in Guests separated by commas. Colour can be a name (blue, green, red…) or a number from 1 to 11, which makes each role or person easy to spot.
Change a time or swap a name in the sheet and click Send again. Calrows keeps a hidden ID for each row, so the existing shift is updated, not copied. Deleted a shift? Remove events for deleted rows takes it off the calendar, and only ever touches events Calrows created. With Pro, automatic sync can do this every hour.
The free plan creates up to 50 new events a month, and its limits are shown in the sidebar before anything runs. Pro is unlimited and a one-time payment with no auto-renewal.
Each person is added as a guest on their own shift events, so those shifts are on the event's guest list for them. Whether they appear automatically in their calendar depends on their Google Calendar settings. A shared rota calendar is another option if everyone should see every shift.
Edit the row and send again. The existing event is updated, not duplicated.
Calrows creates one event per row and does not create repeating series. Copy the week's rows down with new dates; Google Sheets can fill dates for you.