After 15+ years, Google cut off our "forever free" business account yesterday.

We self-host pretty much all our business platforms -- the one thing we depended on Google for was our calendars. So many other features Google provides we already handled in our NextCloud instance, completely within our control -- and NextCloud also has calendars. As I see it, we are already paying for this feature, so let's just move our calendars over to NextCloud.

It turns out doing so actually solved a few issues we had with Google Calendar, while creating a couple new issues for us. Here's a basic rundown of our experience so far.

Basic functionality and migration

All of the basic functionality seems to work just fine -- scheduling meetings, inviting others to attend, making a meeting recur, editing specific event occurrences, and more.

Migrating our calendars turned out to be quite easy. In Google (before we were cut off) I went to the "Settings" tab for the calendar, scrolled down to the "private URL", and copy/pasted that to a new tab, which downloaded a "basic.ics" file.

Then in NextCloud, I created a new "Work" calendar, shared it with our employee group, and imported the downloaded file into that new calendar. And just like that, I had all my events in NextCloud!

Once the rest of our team had done the same, we had essentially the same view of everyone's events as we had in Google.


Here's where we had mixed results -- some major improvements, some minor annoyances.

One thing Google does that's pretty convenient is automatically put events on your calendar when you get an invite from another organization using Google. Now that we're cut off from Google, this is actually broken (at least in terms of the other party seeing if you accepted or not). More on this later.

Another scenario is accepting an invite from somebody not using Google. Before, this was a major hassle -- we could accept the meeting invite in Android but not in Thunderbird (the email client most of us use).

Now, Thunderbird integrates with NextCloud great! Once you add your NextCloud calendar to Thunderbird, you can accept meeting invites in Thunderbird and pick which calendar to add the event. In NextCloud you might need to do a full browser refresh to see the event, but it comes through just fine.

Android also integrates with NextCloud, with the DAVx5 client -- this is an open source program you can get for free from F-Droid, or for $5.99 from the Google Play store, and this integration makes accepting invites on an Android phone pretty much exactly the same as it is for Google Calendars, though a few hoops to jump through to get it all configured.

The one thing that has gotten worse is scheduling a Zoom meeting -- when you do this within the Zoom client, it opens Google Calendar with the new event created, ready for inviting users. It also appeared within Zoom so you could easily join a Zoom meeting without opening Google Calendar, if the event had the normal Zoom info. These have all disappeared from my Zoom client -- now I'm having to follow links from my NextCloud calendar to get into the Zoom meeting. This is the main thing that's not quite as nice as before.

Google Annoyances that went away

With Google Calendar, many of our invitations or attendance responses bounced back to us. This is because Google assumes that it's sending email from Gmail, but we don't use Gmail -- we run our own mail server, and there's no way to provide DKIM keys for Google Calendar invites. So lots of spam filters reject these emails. This is no longer a problem! Our mails from Thunderbird or NextCloud deliver through our mail server just fine.

Another annoyance is the Google Meet link it kept insisting on adding, leading to a lot of client confusion if we forget to remove it.

Aside from that, we're generally just into self-hosting and open source, and think that companies like Facebook and Google have centralized way too much data about people, so we see moving away from these services as a good thing from a privacy perspective.

Cool things about NextCloud calendars

Now, these are things that Google Calendar might do? I'm not sure, and I can't check anymore.

  1. "Appointments"  - you can easily create a public "appointment calendar", defining criteria like working hours, time buffers before and after an appointment, maximum number per day, etc. And then you can publish this and allow anyone to find available slots on your calendar to book an appointment. They don't need to log in or anything -- they can just fill in their email address and a note, and it appears on your calendar.
  2. Anonymous event confirmation -- we invited a client, and they confirmed their attendance using a link in the email.
  3. No bounced emails -- a problem we've had constantly with Google.

Remaining "nits"

The biggest remaining one is... Google Calendar. We have a bunch of clients still using Google Calendar, and they no longer see our attendance confirmations. When we follow a link to confirm, Google gives us a server error, because we're not paying for an account. (It turns out we can confirm our attendance in an anonymous window!)

We are missing the Zoom integration, there's a bit of copy/paste involved to schedule meetings, and they mostly no longer appear in the Zoom client at the appropriate time (yes, I know there are a bunch of open source alternatives, but Zoom still seems to have an edge on video quality on slower connections combined with its easy recording feature, and ubiquity -- and why does Jitsi only save recordings to Dropbox?).

We did have some people on the team who missed the deadline to download their Google Calendar, and getting meetings on their NextCloud calendar has been a bit weird -- there's no option to just "copy to calendar" that we can find. Instead, they can toggle their attendance on somebody else's event, which does add the event to their personal calendar -- and from there they can move it to their work calendar.

The other issue we're seeing is inconsistent notifications -- when I edit a new event it does seem to notify attendees, but for the imported events it does not seem to alert them to any change. And I'm not seeing a notification for appointments getting set on my calendar, either.

Overall impressions

... overall, I'm very impressed. Everything seems to work really well. I am a little concerned about events getting sync'd reliably to Thunderbird and my phone, but aside from that I like getting this crucial part of our business operations off Google.

We also now have trouble getting to Google Docs shared with us -- yet another area where NextCloud is vastly superior, where sharing and accounts "just work" seamlessly and as expected, and OnlyOffice stacks up quite favorably to Google Office in functionality. Do we need to entirely delete the old Google organization account to be able to access documents other people share with us? This siloed, lock-in behavior is exactly why I'm glad we're leaving.


Great write-up, my team is on the verge of moving our calendar and possible file sharing to a self hosted Nextcloud server.

Before we do, we have things to rule out and features to test to make sure all operations can continue as they did, perhaps with some minor changes.

Thanks, cya in the wild.

Your article helped, so thanks!

For the most part, for individual users, things do "just work" with NextCloud calendars. However, there's lots of different quirks compared to Google Calendars -- particularly if you want other people to manage your calendar. If you manage your own events, respond to invitations yourself (works great with both Thunderbird and NextCloud Mail), then it's been fine.

Where we've had trouble is canceling an event (doesn't necessarily remove from other people's calendars), or directly adding events to another person's calendar (for some reason when team members add to my calendar it goes on a "personal" calendar instead of the one I've shared with the team).

Love the appointment-setting functionality!

Add new comment

The content of this field is kept private and will not be shown publicly.

Filtered HTML

  • Web page addresses and email addresses turn into links automatically.
  • Allowed HTML tags: <a href hreflang> <em> <strong> <blockquote cite> <cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h1> <h2 id> <h3 id> <h4 id> <h5 id> <p> <br> <img src alt height width>
  • Lines and paragraphs break automatically.
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.