Nextcloud

Productivity platform you host yourself

Files & Sync AGPL-3.0 intermediate ★ 36,966 stars

What is Nextcloud?

Nextcloud is a suite of client-server software for creating and using file hosting services. Beyond files and sync it adds calendars, contacts, talk, office document editing and hundreds of apps. It is the broadest self-hosted alternative to Google Workspace and Dropbox.

Best for

Teams or individuals replacing Dropbox and Google Drive

Why choose Nextcloud

Nextcloud is the broadest answer to the question of replacing a cloud productivity suite. It starts with file sync and sharing, which alone is a credible Dropbox replacement with desktop and mobile clients that work, and then adds calendars, contacts, a chat and video call service, collaborative document editing, mail, notes, tasks, password management and hundreds of apps on top. Because it is a platform rather than a single-purpose tool, one deployment can replace several subscriptions, and everything shares one account and one permission model. Data stays on your hardware, sharing can be internal or external with expiring links and passwords, and the clients are mature enough that using it does not feel like a compromise. For a small organisation or a household that wants its files and calendars under its own control, it covers more ground than anything else self-hosted.

Replaces

  • Google Drive
  • Dropbox
  • OneDrive

Key features

  • File sync and sharing
  • Calendar and contacts (CalDAV/CardDAV)
  • Collaborative document editing
  • Hundreds of apps and integrations

What to watch out for

It is a substantial PHP application, and the difference between a good and a bad Nextcloud experience is mostly about resources and configuration. Running it on underpowered hardware produces exactly the sluggishness people complain about, and the database choice matters — SQLite is for testing, not for a real instance. It needs a proper maintenance routine: background jobs should run on a scheduled task rather than AJAX, caching should be configured, and upgrades go through a specific sequence that occasionally requires intermediate versions rather than jumping straight to the newest release. The desktop client's sync behaviour is powerful but demands attention, and a badly structured folder layout can produce large-scale conflict files. The app ecosystem varies widely in quality and maintenance, and installing many apps is how instances become slow.

How to deploy

  • Docker
  • Snap
  • Manual LAMP

Getting started

Start with adequate resources and a proper database rather than the smallest available instance, because the complaints about performance almost always trace back to this decision. Configure background jobs to run on a scheduled task rather than in the browser, add a caching layer, and check that the setup warnings page is clean before inviting anyone to use it. Follow the documented upgrade path rather than jumping versions, and take a database and file backup before every upgrade. Keep the app count low and only add what you actually use. Set up and test the backup properly — a Nextcloud instance with a database backup that has never been restored is a much larger risk than most services, because it holds everything at once.

Typical setup

A host with adequate CPU, memory and a proper database rather than SQLite, because the complaints about performance almost always trace back to insufficient resources. Background jobs run on a scheduled task rather than through the browser, caching is configured, and the setup warnings page is clean before anyone is invited to use it. Upgrades follow the documented path rather than jumping versions, with database and file backups taken first. The app count stays low. The backup includes both the database and the data directory and has been restored once, because this instance holds files, calendars and credentials all at once.

Who should look elsewhere

Do not choose it as a lightweight file sync tool for a single person with a small folder, because the deployment and maintenance cost is disproportionate and a simpler sync tool will serve better. Avoid it if you cannot allocate real CPU, memory and database resources, since a starved instance produces a bad experience for everyone using it. And if nobody will own the backup and upgrade routine, the concentration of all your files, calendars and credentials in one instance makes a maintenance failure unusually expensive.

Project health

  • GitHub stars: 36,966
  • Last code push: 2026-10-01
  • Open issues: 3,656
  • Status: actively developed

Figures pulled from the GitHub API and refreshed periodically.

Nextcloud as an alternative

More in Files & Sync