GameSheet does publish a live schedule feed, and it drops straight into Google Calendar once you have the address. The trouble is that the address isn't where parents look for it: the scores-and-standings pages your league embeds are read-only, and the subscribe option lives in a separate product called GameSheet Teams, behind a login.
So here's the honest version before you start clicking. If you have a GameSheet Teams account, this takes a few minutes. If you don't, the fastest path isn't creating one — it's asking your team manager to copy the calendar URL and send it to you, because that link works for anyone holding it. Both routes are below, plus the Google-side steps and the fine print about how fast a rescheduled game actually shows up.
Start in GameSheet Teams, not the stats page. There are two GameSheets. The scores-and-standings page on your league's website (and gamesheetstats.com behind it) is the public one, and it has no calendar export at all. The feed lives in GameSheet Teams, the dashboard at teams.gamesheet.app. If you're clicking around a standings table looking for a subscribe button, that's why you can't find it.
Log in at teams.gamesheet.app. Sign in with your email and password if you already have a GameSheet Teams account. If you don't, skip to the last step — a parent doesn't strictly need an account to end up with the link.
Open the Schedule tab. The Teams dashboard splits into Roster, Schedule, and team communication. You want Schedule — the calendar option is not in an account or settings menu.
Click Actions, then Subscribe to Team Schedule. Actions is the button above the schedule itself. Subscribing is one item in that menu, alongside the other schedule tools.
Choose Calendar URL rather than the Google shortcut. GameSheet offers three ways out: Apple Calendar, Google Calendar, or Calendar URL. The Google option opens Google in a new window and you click Add — quick, but you never see the address. Calendar URL copies the raw link to your clipboard, and that's the version worth the extra ten seconds: it can go into any calendar later, or into Schedule Caddie, without redoing the whole flow.
Open Google Calendar in a browser — the phone app can't do this part. On a computer, go to calendar.google.com. On a phone, the Google Calendar app has no way to add a calendar from a URL — open calendar.google.com in your phone's browser instead, and use Request Desktop Site if the mobile page hides the settings.
Add calendar → From URL → paste → Add. In the left sidebar, click the + next to "Other calendars" and choose From URL. Paste the GameSheet link and click Add calendar. If Google rejects a webcal:// link, change webcal:// to https:// and try again.
Check it on your phone. Events show up on the web within a minute. In the Google Calendar phone app, open Settings, find the new calendar under your account, and make sure Sync is turned on so it appears on your phone too.
No login? Ask your team manager for the copied URL. This is the shortcut most hockey parents actually need. The calendar URL isn't tied to your account — once someone copies it, it works for anyone who has it. So a manager or coach can grab it once and text it to the whole team, and you start at the Google Calendar step above.
Subscribing puts the schedule in Google Calendar, but Google refreshes subscribed feeds on its own cycle — typically every 12 to 24 hours, and GameSheet itself warns it can take the full 24 — with no button to force it and no notification when an event changes. A game that moved this morning can still show the old time at dinner. Nothing speeds Google's cycle up, including us. What Schedule Caddie does instead is read the same GameSheet feed every hour and email you exactly what changed, so a 6am rink change doesn't reach you at 6am.
Paste the link into Google Calendar, Apple Calendar, or Outlook and it works — the catch is getting hold of the link in the first place, since generating it needs a GameSheet Teams login most parents don't have. And it's one URL per team — a hockey kid playing league games plus a tournament entry has two GameSheet schedules, in two separate Google calendars, before you even count a sibling.
My league's website shows GameSheet scores but there's no subscribe option
That's the public stats widget most leagues embed, and it's read-only — scores, standings, and stats, with nothing to export. The same is true of the public pages on gamesheetstats.com. Subscribing only exists inside GameSheet Teams.
I don't have a GameSheet Teams login and don't know how to get one
Accounts start with a 10-character invitation code, and those codes are generated for coaches and managers — the league or tournament director hands them out, not GameSheet support. Parents and players are meant to be invited in as team followers by their own coach or manager instead. Either way, the fastest route to a calendar is asking whoever runs your team to copy the URL and send it to you.
There's no "From URL" option in my Google Calendar app
There isn't one — the phone app genuinely can't add subscribed calendars. This step has to happen at calendar.google.com in a browser. Once it's added there, the calendar syncs to the app on its own.
I subscribed but tonight's game still isn't showing up
Give it time before assuming it's broken. GameSheet's own documentation warns that Google Calendar can take up to 24 hours to pull a new feed (and Apple Calendar up to 3). That's Google's refresh cycle, not something you can speed up from the GameSheet side.
My kid plays league games and tournaments under different teams
Common in hockey, and it means more than one feed. GameSheet treats a tournament entry as its own team with its own schedule, so it gets its own calendar URL. Add each one to Google separately — or paste both into Schedule Caddie, where they merge into a single view of your kid's season.
Google decides on its own — typically every 12 to 24 hours, and GameSheet's own documentation warns it can take the full 24. There's no setting to speed it up and no way to force a refresh. Changes also arrive silently: the event just moves, with no notification that it moved.
No. Subscribed calendars update quietly in the background, and when the new time finally lands it just replaces the old one — no notification, no highlight. In a sport where ice time shifts at short notice, that gap is the whole problem. Schedule Caddie re-reads the same GameSheet feed every hour and emails you exactly what changed: old time, new time, which team.
Yes, indirectly. The link itself isn't personal — it's a plain subscription URL, and it keeps working for whoever holds it. What requires a login is generating it in the first place. So ask your team manager to copy it once from the Schedule tab and share it with the parents. That's genuinely how most families on GameSheet end up subscribed.
Either works. The Google button opens Google in a new window and you click Add, which is faster. Copying the Calendar URL takes ten seconds longer but gives you something reusable — you can put the same address into a second Google account, an iPhone, or Schedule Caddie without going back through GameSheet.
Yes, but the Google half needs a browser. Copy the Calendar URL from GameSheet Teams (or get it from your manager), then add it at calendar.google.com in your phone's browser, because the Google Calendar app can't add URLs. It's clumsy but it works.
Each app means another link and another separate calendar in Google — and hockey families hit this early, because the hockey kid is on GameSheet through the league while a sibling's team runs on something else entirely. Schedule Caddie takes the same links (GameSheet, TeamSnap, GameChanger, school PDFs) and merges them into one color-coded calendar with conflict detection.
Every kid, every schedule, every app — merged, color-coded, and watched for changes.
Get Started FreeWant to see it first? Explore a real family's calendar — no account needed.
Prefer an interactive walkthrough? Try the guided wizard
Team apps, school calendars, and paper schedules — merged, color-coded, change-alerted.