Sync webcal with iCloud
Several webcal feeds, one iCloud calendar you already have. CalCollapse copies the events across — every 15 minutes, one way — so Apple Calendar, and everything else reading EventKit, sees all of it in a calendar you already own.
Why adding another subscribed calendar never quite works
Almost every team app, school portal and shared calendar will hand you a webcal URL. Apple Calendar will take it. What you get is another calendar in the list, not the one you already live in:
- Each feed becomes its own calendar.Two kids, three teams, a school calendar and a public holidays feed is six extra calendars. None of them is the family calendar you already share, and none of them is what the Watch is looking at unless you remember to turn it on.
- Apple refreshes subscriptions on its own schedule.A practice that moved this afternoon often still shows the old time this evening. There is no button that means “check now”, and the interval is not yours to set on an iPhone.
- A subscription is all or nothing.You cannot label events, hide details, leave things out, or choose which existing calendar they land in. The feed arrives as itself, in a calendar Apple created for it.
CalCollapse takes the other approach: it reads the feeds you paste and writes the events into an iCloud calendar you already own. From then on, Apple Calendar is showing your own iCloud data — on every device signed in to that Apple Account, with no per-device setup and nothing to configure on the Watch.
What it does
Reads the feeds you paste
A TeamSnap team, a ParentSquare school calendar, a secret Google iCal address, or any other publisher that offers a webcal or HTTPS .ics URL. Several feeds can share one destination.
Writes them into a calendar you already own
You choose an existing iCloud calendar as the destination. CalCollapse never creates, renames or deletes an iCloud calendar, and it only edits the events it wrote itself — anything you added by hand is invisible to it.
Goes one way, every 15 minutes
Changes reach iCloud every 15 minutes. You can trigger a run yourself too; every run is logged with what it moved. The publisher of the feed is never written to.
What it will not do. Events flow one way, feed into iCloud. An event that exists only in iCloud stays there. Editing a synced event in Apple Calendar will be overwritten on the next run — the feed is the source of truth for anything this copies.
How it works
Sign in with Apple
This only identifies you. It grants no calendar access of any kind — that comes later, and separately.
Connect iCloud with an app-specific password
Generated at account.apple.com and revocable there at any time, without telling us. Apple offers no calendar-only credential to third parties, so this is the narrowest grant available.
Paste the webcal URL
Copy it from the publisher — TeamSnap’s Schedule → Settings → Sync Calendar / Export, ParentSquare’s calendar subscribe link, or any other iCal URL. Google is not required.
Pick an iCloud calendar you already have
Several feeds can share that destination. Each keeps its own label so you can still tell a soccer practice from a school early-release once they sit in the same calendar. The first sync runs immediately, and every 15 minutes after that.
What it costs
One calendar syncing into iCloud is free, which is enough if the scattering is only between one feed and your phone. Collapsing several feeds at once, or connecting Google accounts as well, needs the unlimited plan. Billing is handled by Stripe; card details never reach this app.
Questions
What is a webcal, and can CalCollapse read one?
A webcal is a live calendar feed — usually a URL starting with webcal:// or https:// that serves an iCalendar (.ics) file. TeamSnap, ParentSquare, many school portals, and Google Calendar's secret iCal address all publish one. Paste that URL into CalCollapse and the events are written into an iCloud calendar you already have.
How is this different from adding a subscribed calendar in Apple Calendar?
Apple Calendar treats each webcal as its own calendar. Subscribe to three teams and a school feed and you have four extra calendars, each refreshing on Apple's own schedule, none of them the family calendar you already share. CalCollapse copies the events into one existing iCloud calendar instead, so Apple Calendar, the Watch, and everything else reading EventKit sees them as your own iCloud data.
Do I have to create a new iCloud calendar?
No. You choose one from the calendars you already have. CalCollapse never creates, renames or deletes an iCloud calendar, and it only ever edits the events it wrote itself, so anything you added to that calendar by hand is invisible to it.
Can several webcals land in the same iCloud calendar?
Yes. That is the usual reason to use this at all. Paste as many feeds as you have — one per team, one per school, a public holidays feed — and point them at the same destination. Each keeps its own label so you can still tell them apart once they are in one place.
Do I need to connect Google?
No. After iCloud, paste the URL. Google Calendar is a separate source if you have one; it is not a requirement for webcal.
Which way do events flow?
One way, from the feed into iCloud. Editing a synced event in Apple Calendar does not push back to TeamSnap, ParentSquare or whoever publishes the feed; it is overwritten on the next run. The publisher remains the source of truth.
How current does the iCloud copy stay?
Changes reach iCloud every 15 minutes. You can also trigger a run yourself at any time from the dashboard. Every run is logged with what it moved, so a sync that fails is visible rather than silent. Apple's own subscribed calendars often lag hours behind the same feed.
Is the URL private?
Treat it as a password. Many publishers put a token in the query string so anyone with the link can read the feed. We store it encrypted with your other credentials, fetch it only to run your sync, and never show it to other users. Deleting the sync stops us fetching it.
What does it cost?
One calendar syncing into iCloud is free, whether that calendar is a webcal or a Google calendar. Collapsing several feeds at once, or connecting Google accounts as well, needs the unlimited plan. Billing is handled by Stripe; card details never reach this app.
If the feed is a team schedule, TeamSnap has a page of its own. A school calendar? ParentSquare works the same way. Google calendars copy into iCloud too, as a separate source. The setup walkthrough shows every screen before you hand over anything, and what we store and for how long is in the privacy policy. Feeds refresh every 15 minutes.