Most people have done both of these things and never noticed the difference.
You clicked "Add to calendar" on an event page. You picked Google. Your calendar opened, the event appeared, and that was it. You imported a calendar file. The event is a copy. If the organizer changes the time tomorrow, your copy will not change.
You opened a sports schedule that ended in .ics. You added the link to Apple Calendar. The whole season showed up. A week later you noticed an extra game appear in your calendar by itself. You did not do anything. That is a subscription.
A subscription is a live link
A calendar subscription is a URL your calendar app re-reads on a schedule. The app stores the URL. Every hour or two, it fetches the latest events from that URL and updates what you see. The events on your phone are always whatever the URL says right now.
This is the same idea as following a podcast. You do not download every episode. Your app checks the feed and adds new episodes automatically. A calendar subscription works the same way.
The link is the product. The events live on the publisher's server, not on your phone.
An import is a one-time copy
When you import a calendar file, your calendar app reads it once and saves the events directly into your calendar. After that, the file is gone. There is no link to check later.
This is useful for a single event you are confirming. It is the wrong tool for a season, a class schedule, or any list that might change.
The give-away is the question your calendar asks when you click the link. "Add events to your calendar?" means import. "Subscribe to this calendar?" means live link.
Why publishers care about the difference
If you publish a schedule that changes, imports leave you stuck. You hand out a CSV. People add the events. You move one event a week later. You now have to email everyone, hope they see it, and hope they delete the old event and add the new one. Most of them will not.
A subscription removes that work. You edit the event once on the publisher side. Every subscriber's calendar updates the next time their app checks.
This is why Calfeed publishes subscribable calendar links by default. The first edit pays for the architecture.
How often the link gets checked
The refresh rate is controlled by the subscriber's calendar app, not the publisher.
- Apple Calendar: about once an hour by default. Users can pick faster or slower.
- Google Calendar: every 12 to 24 hours. There is no user setting to make it faster.
- Outlook / Microsoft 365: every few hours.
For most schedules this is fine. For time-sensitive changes (a practice cancelled 30 minutes before start), the subscription will not catch it in time. Send a one-off email or text in addition.
The link is forever
Once Calfeed gives you a calendar link, that link stays the same. Edit the events all you want. Add events. Remove events. Rename the calendar. The link does not change.
This matters because every subscriber on every device is keyed to that link. If the link changed when you edited the calendar, every subscriber would have to re-subscribe. They would not. The audience would dissolve every time you updated the schedule.
The stability is the moat. A calendar with 30 subscribers stays that way through every edit.
What this means in practice
If you are publishing a schedule for an audience of more than five people, publish it as a subscription. The cost of writing one event into your dashboard is the same as the cost of writing it into your own calendar. The cost of every edit after that drops to zero.
If you are sending one event to one person, an import or a calendar invite is fine.
Try Calfeed to publish a schedule as a subscribable calendar link.