Every holiday, somewhere, a regular walks to their coffee shop through the cold because Google said it was open. They post about it. The one-star review outlives the holiday by years.
Holiday hours look like a five-minute job and aren’t, for one structural reason: your hours live in at least four places that don’t talk to each other, and one of them — Square Online — can’t even express the thing you’re trying to say. This guide walks through each channel, what it actually supports, and the one gap you have to work around.
Why this is harder than it should be
You’d think a modern café has one source of truth for “are we open.” You don’t. On a typical Square setup, your hours exist in:
- Your Square location settings — what the POS and your listings integration know.
- Square Online fulfillment hours — when you’ll accept pickup orders, which is a different question from when the door is unlocked.
- Google Business Profile — where the overwhelming majority of “is it open” questions get answered.
- Apple Business Connect — Apple Maps and Siri.
- Yelp, and whatever else you’re listed on.
- Your own app and email list — your most loyal customers, and the least likely to check.
Each has its own model of time. Some sync. Most don’t. And they fail in different directions: Google confidently tells people you’re open, while Square Online quietly accepts a pickup order for a day nobody’s there to make it.
Here’s the honest state of play:
| Channel | Special / holiday hours? | Full-day closure? | Syncs from Square? |
|---|---|---|---|
| Google Business Profile | Yes — override regular hours | Yes (≤6 days via special hours) | Regular hours yes; holiday hours not documented |
| Apple Business Connect | Yes — holiday open + closed, by date range | Yes — temporarily closed | No documented sync |
| Yelp | Yes — special hours, day by day | Yes — Temporarily Closed + date | No documented sync |
| Square Online pickup | No — see below | Yes — restricted dates | n/a |
| Your app / email | Manual | Manual | n/a |
That fourth row is the whole problem.
The Square Online gap nobody warns you about
Square Online’s pickup fulfillment has restricted dates. Square’s documentation describes them plainly: you can “designate specific dates as restricted to indicate days of the year your location won’t process pickup orders (such as holidays).” You’ll find them in the fulfillment settings for the location’s Pickup tab, alongside where you “set up fulfillment hours by indicating your pickup hours and time zone.”
Read that carefully, because the limitation is load-bearing: restricted dates are binary. They block a date entirely. Square documents no mechanism for different hours on a given date.
So if you’re doing 7am to noon on Christmas Eve — short day, still open, still want the pre-holiday rush — Square Online has no documented way to say that. Google can say it. Apple can say it. Yelp can say it. Your ordering channel can’t.
Two workarounds, both imperfect:
- Restrict the date. Clean and safe: no pickup orders, no surprises. You lose a morning of online orders on one of the busiest coffee days of the year.
- Adjust fulfillment hours for that day, then change them back. You get the short day you actually wanted. You also get a manual change that must be reversed, and the reversal is the step that gets forgotten. Set the calendar reminder before you make the change, not after.
There’s a third option people reach for — time-based categories, which control when items are available. Don’t. Square’s own documentation describes them as recurring day-of-week and time-of-day rules: “select the Only during certain days and times option and use the checkboxes to choose which days of the week these items are available.” No date ranges, no one-off holidays. It’s the wrong tool.
If your holiday plan involves running a limited menu rather than limited hours, marking items sold out (86) is the right lever instead.
Google Business Profile: the one that matters most
This is where the money is, because this is where the “is it open” question gets asked. Three things to know.
Special hours override regular hours. That’s their job. Google’s documentation: “your regular hours for the second day are ignored in favor of the special hours.” They’re designed for a business that “temporarily adjusts its hours of operation” or “remains closed for 6 days in a row or fewer.” That six-day cap is a real constraint — a longer seasonal closure needs a different tool.
There’s a prerequisite that silently breaks everything. Straight from Google: “For special hours to show up on your Business Profile, set your business hours to ‘Open with main hours.’” Miss this and your special hours simply don’t display. No error, no warning — you did the work and nothing happened. Check this first.
Not setting them is itself a message. Google’s own words: “On the holidays listed below, a warning may appear on your Business Profile that tells users your business hours might differ.” Sit with that. Google will actively tell your customers not to trust your hours. And it advises confirming your hours for official holidays “even if they’re the same as your regular hours” — because confirming is what removes the warning. Doing nothing is worse than being open with normal hours.
Set them early, because you’re not the only editor
Google states that “if we receive reports that your business info isn’t accurate, we might update your profile,” drawing on reports “from various sources.” You get a notification and an alert in the Edit profile section — after the fact.
And your own edits aren’t instant. Google says they’re reviewed and “usually take up to 10 minutes… but sometimes it can take up to 30 days.”
Thirty days. That’s the argument for doing your holiday hours in November rather than on December 23rd. While you’re in there, it’s worth confirming your ordering link is still pointed at your own channel — the holidays are when a third-party link costs you the most.
Apple Business Connect and Yelp
Apple is genuinely good at this — four separate date-range mechanisms: temporarily open, temporarily closed, holiday open hours, and holiday closed hours (“if your location will be closed on specific holiday or holidays, you can indicate the closed day or days by selecting the date ranges”).
The catch: there is no documented sync from Square to Apple. Treat Apple as fully manual. It’s also the channel owners forget entirely, which means it’s the one that’s wrong the longest. Every iPhone user asking Siri where to get coffee is reading it.
Yelp supports special hours under Operation hours in your business information, with upcoming special hours day by day. For a real closure, mark the business Temporarily Closed and set a “Closed Until” date — Yelp asks for verification details and a moderator reviews it, so it isn’t instant either.
What actually syncs from Square?
This is worth being precise about, because assuming a sync exists is how hours go stale.
Square’s Google Business Profile integration is real. Square lists what it sends: “business name, business description, business address & location coordinates, business category, business type, business hours, business phone number, business website links, business logo” — and states that “any edits you make to a Square location automatically sync with Google.” (Google requires a physical location, so online-only businesses aren’t eligible.)
But notice the scope. That’s your regular hours. Square’s documentation is silent on special or holiday hours, and it makes sense that it would be: Square Online’s only holiday primitive is a restricted date, which blocks a date rather than setting hours for it. There’s nothing holiday-shaped to send.
The safe assumption: set holiday hours in Google yourself. For Apple, there’s no evidence of any Square sync at all. Verify rather than assume — but plan for manual.
The holiday checklist
Print this. It’s twenty minutes, once, per holiday.
Two to four weeks ahead
- Decide the actual hours, per location, including whether pickup runs. Most holiday-hours chaos is a decision problem wearing a software costume.
- Google: add special hours for each date. Confirm “Open with main hours” is set. Do it now — edits can take up to 30 days.
- Apple Business Connect: set holiday open or closed hours by date range.
- Yelp: add special hours, or mark temporarily closed with a Closed Until date.
The week of
- Square Online: restrict the date if you’re not doing pickup. If you’re open on short hours, adjust fulfillment hours — and set the reminder to revert before you make the change.
- Your own channels: push notification and email a day or two ahead. This is the highest-leverage step and the most skipped one. Your regulars are the people most likely to show up on autopilot — the same pickup no-show dynamics apply, except here the shop is the thing that doesn’t show up.
- Tell your staff, and make sure whoever opens knows what the listings say.
The morning after
- Undo everything. Restore fulfillment hours. Clear temporary states. Check that the listings flipped back. Hours left wrong after a holiday cost more than hours wrong during one, because nobody’s looking for the mistake anymore.
The channel you control
There’s a reason step 6 is the one worth building a habit around. Every other channel on this list is a listing you’re renting — Google decides how your hours display and can edit them on a stranger’s report; Apple and Yelp have their own review queues and moderators.
The channel where “we’re closing at noon Christmas Eve” reaches your customers in seconds, with no review queue and no possibility of a third party overriding it, is the one you own. A push notification to people who have already ordered from you is the only holiday-hours tool on this page with no intermediary in it.
That’s a good chunk of why cafés end up wanting their own app — not because Google is bad at hours, but because a channel you own is the only one that does exactly what you told it, immediately, for $99 CAD/month per location. Though even with an app, you still owe Google and Apple twenty minutes before every holiday. Nobody escapes the checklist.
Wrap up
Holiday hours are a distributed-systems problem in an apron. Four dashboards, four data models, one sync that only covers regular hours, and one channel — Square Online — that can’t express a short day at all.
Do the four listings two weeks out, restrict or adjust Square Online the week of, message your own customers the day before, and set a reminder to undo it all. The whole thing takes less time than one apologetic reply to a one-star review from someone who walked to your locked door on Boxing Day.
Sources
- Square — In-store and curbside pickup with Square Online (restricted dates, fulfillment hours)
- Square — Set up Google Business Profile with Square (what syncs)
- Square — Set up time-based categories in your Square Online store
- Google — Edit your business hours (special hours)
- Google — Set holiday hours for your business
- Google — Edits to your Business Profile info
- Apple — Configure location attributes (Apple Business Connect)
- Yelp — Temporarily close your business or change your business hours