Nobody at the Desk: A UK App Release Calendar for Bank Holidays and School Breaks
There is a particular optimism in a release plan that lands on the Friday before a bank holiday. The build is green, the ticket is closed, and someone says the words ‘it’s only a small change’. Then the long weekend arrives, the office empties, and the app keeps doing whatever it does — to users who are on trains, in garden centres or trying to buy something before the shops shut.
A bank holiday is not a problem because nobody works. It is a problem because the people who can fix things are scattered, the people who can approve things are on leave, and the store review queue does not care about your rota. For UK teams, the complication is that ‘bank holiday’ is not one list. It is four nations, a set of school breaks, and a support plan that usually assumes everyone is in the same place at the same time.
The calendar is not one calendar
Start by throwing away the single ‘UK bank holiday’ filter. England and Wales share most public holidays, but Scotland has 2 January, St Andrew’s Day and a different summer bank holiday. Northern Ireland adds St Patrick’s Day and the Battle of the Boyne. School terms diverge too: Scottish schools often return in mid-August, English and Welsh breaks vary by council, and Northern Ireland has its own rhythm.
For release planning, you do not need a perfect national database. You need a country field and a simple rule. Mark every release date with the nations where support cover is thin, where schools are off, or where a marketing campaign is likely to pull attention. If your app has a strong Scottish user base, a Glasgow support desk with two people left on Friday is a red flag even if the London office is fully staffed.
Store review is a queue, not a service desk
Apple and Google do not observe your bank holiday. Review times move around, and a first submission on the Thursday before a long weekend is not brave — it is just a way to spend the weekend refreshing a status page. Build in buffer for first builds, new payment flows, permission changes and anything that touches account deletion or health data.
If you are using phased release or staged rollout, know where the pause button is before you need it. That means console access for more than one person, a note of who can halt a rollout, and a check that the person with the password is not camping in Snowdonia. Do not treat a staged rollout as a rollback plan on its own. It limits blast radius, but it does not undo a bad database migration or a broken third-party SDK.
Marketing wants the peak; support needs the trough
Marketing teams love a bank holiday push: payday weekends, half-term, the last chance before school returns. That is fine. The mistake is launching the feature and the campaign on the same day. If the app breaks, you want the campaign team to be able to pause spend without also trying to work out whether the problem is the new build, the landing page or the discount code.
Separate the binary release from the content change where you can. Copy, imagery and campaign flags can often go through remote config. Core logic, permissions and payment flows should not be changed quietly on a red day just because the toggle is easy. The test is simple: if this goes wrong at 8pm on a bank holiday, can one person turn it off without a deploy?
Build a traffic-light release calendar
A shared calendar beats a long policy document. Give each date a colour. Green means normal release rules apply. Amber means releases are allowed with a named rollback owner, two people on call and no database migrations. Red means no production releases except security fixes and genuine hotfixes.
Red days should include the obvious bank holidays, but also the Fridays before them, the first day back after a school break, and the quiet week between Christmas and New Year when half the team is on leave. In Scotland, watch the January return and the early August bank holiday. In Northern Ireland, St Patrick’s Day and the Twelfth can affect support and retail behaviour. In Wales, the school break pattern can make a ‘normal’ Monday feel like a Sunday.
Rollback rules for thin rotas
Mobile rollback is a polite fiction. You cannot pull a binary from a user’s phone. So define what rollback actually means for each release: disable a feature flag, revert a remote config value, roll forward with a patch, or switch to a fallback provider. Write it down before the release, not in the incident channel at 9pm.
Database changes deserve their own rule. Use backward-compatible migrations and two-step deploys so the previous app version can still talk to the database. If that is not possible, the release probably belongs on a green day with full engineering cover. A hotfix is not a strategy for a schema change you rushed on a Friday.
On-call that people can actually do
An on-call rota is only real if the person on call can access the systems, understands the runbook and knows when to escalate. Name a primary and a secondary. Give the secondary a different time zone or at least a different postcode. Put links to dashboards, store consoles, feature flags and the incident channel in one place. Test the alerts before the holiday, not during it.
Also be honest about human cost. Someone who has been on call for a bank holiday weekend should not be expected to pick up the same rota the following week. If you cannot staff a release safely, that is useful information. It means the release moves, not that the rota gets stretched again.
Keep delivery moving
A red day is not a freeze on all work. It is a freeze on production risk. Use the quiet windows for staging work, accessibility fixes, dependency updates, test coverage and the analysis nobody has time for during a campaign. Keep a release train running so small changes do not pile up into a terrifying January deploy.
The best holiday calendar is boring. It makes the quiet days predictable, the support rota credible and the rollback plan short enough to read in an incident. Map the four nations, respect the store queue, staff the on-call, and then go and enjoy the long weekend. The app can wait until Tuesday.