GuidesBusiness and monitoringInstead of Drive/Dropbox

Nextcloud or Seafile? Self-hosted alternatives to Google Drive and Dropbox compared

Nextcloud and Seafile side by side on one Debian 13 server, with the same 3,005 files and two users in both, and the sync times, memory, disk, sharing, versions, encryption, backups and updates each gave, next to what Google Drive, Dropbox and OneDrive cost.

Tested on Nextcloud 34.0.4 and 35.0.1, and Seafile Community Edition 13.0.28, on Debian 13 (trixie) on a Melonslab server Updated October 14, 2026

Recommended server for this guide

VC-S Micro · 2 vCPU · 8 GB Memory · 250 GB Storage

Month to month, no lock-in 7-day money-back guarantee

These steps were tested on VC-P Alloy. VC-S Micro has the same number of vCPUs and memory on an older CPU, and 250 GB of storage instead of 60 GB, which matters more here.

€7.99/mo

Deploy now
On this page

Google Drive, Dropbox and Microsoft OneDrive keep your company's files on their servers, at a price per user each month. Nextcloud and Seafile do the same file sync on a server of your own, with desktop clients, shared folders, links and version history, and no price per user. We gave both the same files and users on the same server. What Google, Dropbox and Microsoft charge, and what you give up by leaving them, is near the end of this page, from their own pages.

The short answer

Pick Nextcloud if you want one place for files, calendars, contacts and more apps, and your files are mostly documents that change a little at a time: it used the least memory and has the most features in its free version. Pick Seafile if file sync is the job and it has to be fast, especially with large files that change in place: it uploaded our files five times faster, sent only the changed parts of a file, and its history took a fraction of the disk, but it does files only and holds back search in file contents, file locking and folder permissions for its paid edition.

What we tested

We installed both on the same fresh Melonslab VC-P Alloy (2 vCPU, 8 GB) with Debian 13, one after the other, each under a user of its own, behind the same Caddy. Nextcloud followed our guide Nextcloud with rootless Podman step by step, and every step worked as written. We have no Seafile guide, so we installed Seafile Community Edition from its official Docker files and fitted it into the same pattern: a pod under its own user, Quadlet units, passwords as Podman secrets and our Caddy in front (How we ran Seafile shows what changed).

Then we gave both the same work:

  • the same two users, Anna and Erik, and the same 3,005 files, 2.8 GB in all: 3,001 small files (text, CSV, PDF, images and Word files from 5 KB to 1.6 MB) in 60 folders, and four large ones, a 1 GB disk image and three 300 MB videos;
  • the first upload with each project's command-line sync client, nextcloudcmd 3.16.7 and seaf-cli 9.0.13, and a re-sync after changing seven files: three text files and two CSV files edited, 1 MB overwritten in the middle of the disk image, and a line added to the end of one video;
  • a folder shared from Anna to Erik that both write to, a public link with a password and an expiry date, restoring an older version of a file and a deleted folder, file search, the web interface, encryption, a reboot, a backup restored into empty volumes, and an update.

The sync clients ran on the server itself, so the network was not the limit: the times show how much work each server and client does. Over a real internet line, the amount sent counts for more.

The numbers

Nextcloud 34.0.4Seafile CE 13.0.28
Containers3: Nextcloud (Apache and PHP), MariaDB 11.8, Redis 83: Seafile (its web app and file server), MariaDB 10.11, Redis 8
Memory, idle after a rebootabout 190 MB (MariaDB 144, Nextcloud 36, Redis 10)about 520 MB (Seafile 381, MariaDB 130, Redis 10)
Memory, highest during the first uploadabout 255 MBabout 945 MB
Images on disk1.96 GB2.14 GB
Data after the test5.4 GB3.0 GB
From useradd to the login pageabout 2 minutes 20 secondsabout 2 minutes 20 seconds
First upload, 3,005 files, 2.8 GB8 minutes 42 seconds1 minute 46 seconds
Re-sync after changing 7 files82 seconds, 1.3 GB sentabout 18 seconds, 15 MB sent
A folder of 50 files in the browser5 to 8 seconds1.2 to 2.2 seconds
Backup3 minutes 15 seconds, offline, 5.2 GB1 minute 31 seconds, online, 2.8 GB

Memory is the sum of each app's containers, measured with podman stats four minutes after a reboot, with each app opened once. The browser times come from a headless Chromium on the same 2 vCPU server, so they are slower than on a laptop; the gap between the two is what counts.

Syncing files

This is where the two differ most, because they store files in different ways.

Nextcloud stores each file as a whole, as an ordinary file on disk, and its clients upload a changed file again from start to end, in chunks. Our first upload took 8 minutes 42 seconds. After the seven changes, nextcloudcmd sent 1.3 GB: the whole 1 GB disk image and the whole 300 MB video, for 1 MB of changes and one added line.

Seafile cuts every file into blocks, identified by their content, and a client sends only the blocks the server does not have. Our first upload took 1 minute 46 seconds. After the same seven changes, its client sent 15 MB and was done about 18 seconds after the files were saved, most of it spent reading the 1 GB image to find what had changed. Seafile's client watches the folder and starts by itself; nextcloudcmd runs once when you start it, whereas the Nextcloud desktop app also watches the folder.

Over an office line with 100 Mbit/s upload, 1.3 GB takes close to two minutes at best and 15 MB about a second. For text and office files that are rewritten in full when saved, the difference is small. For disk images, video projects, databases, large PDFs and design files, it is large.

One thing to know about Seafile. Users that an admin creates must choose a new password the first time they log in to the web interface, and changing a password cuts off every sync client of that user: ours stopped with "Permission denied on server" and had to log in again. Let new users log in to the web first and connect their computers afterwards.

Sharing

Both did what we asked.

  • A folder for two users. In Nextcloud, Anna shared Projects with Erik, and it appeared in his files at once. In Seafile, the shared folder appeared under Shared with me as a library of its own, which Erik synced as one. In both, what Erik added showed up for Anna, and the other way round.
  • A public link. Both made a link with a password and an expiry date. Without the password, both refused; with it, both gave the file.

Shared folders in Seafile cannot be set to read-only for one subfolder and writable for another: that is "fine-grained folder permission", one of the Pro features. Nextcloud sets permissions per share, on any file or folder, in its free version.

Versions, the trash and restoring

Both kept older versions and deleted files, and both brought them back. We restored the first version of a text file after changing it, and a deleted folder with 50 files from the trash, in both.

They store history differently. Nextcloud keeps each older version as a whole file: after our test, its versions of the disk image and the video took 1.3 GB, and it thins old versions out over time. Seafile keeps history as the blocks that changed: the same history cost it 15 MB. By default Seafile keeps a library's whole history; the owner can limit it per library. Seafile can also show or restore a whole library as it was at an earlier time, which we did not test.

Both find files by name. Nextcloud's search box searches all your files at once. In Seafile Community Edition you search within one library at a time; searching across libraries, and searching the text inside files, are Pro features. Nextcloud can search inside files too, but only with its full-text search apps and an Elasticsearch server, which we did not set up. Neither found the word forecast, which was only inside a file.

The web interface

Seafile's interface opened a folder of 50 files in about 1.5 seconds in our test, and Nextcloud's in 5 to 8 seconds. Both servers answered the request for the folder's contents in under 0.2 seconds; the difference is in the browser, where Nextcloud loads a much larger app. Nextcloud's interface in return does more: previews, a dashboard, calendars, contacts and the rest of its apps in the same place.

Both come in Swedish. In Nextcloud, each user chooses it under Personal settings > Personal info > Language; in Seafile, under Settings in the account menu.

Encryption

Both servers are reached over HTTPS through Caddy. On the server itself:

  • Nextcloud has server-side encryption, which we switched on with occ encryption:enable: a new file was stored as AES-256 on disk, not as text. The keys stay on the same server, so it protects copies of the storage, such as an external disk, more than it protects against someone with access to the server. We decrypted everything again with occ encryption:decrypt-all, which worked. Nextcloud also has an end-to-end encryption app for single folders, set up in the desktop and phone apps. It installed on version 34, but we did not test it, as the command-line client cannot set it up.
  • Seafile has encrypted libraries, with a password of their own. We created one and synced it with the command-line client, which encrypts on the computer: the text in our file could not be found anywhere in Seafile's storage, while it could in an ordinary library. File and folder names and sizes are not encrypted, which Seafile's documentation says too. In the web interface and the phone apps, the password goes to the server, which keeps it in memory for an hour.

Resources

Nextcloud is a PHP app, and when nothing happens only MariaDB uses much memory: about 190 MB in all. Seafile keeps its web app's workers and its file server running, and used about 520 MB at rest and up to 945 MB during the upload. Both are small next to a server with 8 GB, and together used about 710 MB at rest.

On disk the order is the other way round. Nextcloud stores each file once, plus whole old versions: 5.4 GB after our test. Seafile stored the same files and history in 3.0 GB, because the history only took the changed blocks and identical blocks are stored once.

Updates and backups

Nextcloud's guide follows the 34-apache tag, so updates within 34 install by themselves, and you move to the next major version yourself, one at a time. Our move from 34 to 35, following the guide, took 95 seconds and logged the missing table the guide warns about. Seafile follows 13.0-latest in our setup, so patch releases also install by themselves: we moved from 13.0.25 to 13.0.28 by changing the tag, and the container ran its own upgrade script in 24 seconds. Seafile 14.0 was out as a beta when we tested, and Seafile's upgrade notes list manual steps for each major version, such as changes to its settings files from 12.0 to 13.0.

Backups differ more. Nextcloud's guide puts it in maintenance mode while it dumps the database and exports the volume: 3 minutes 15 seconds without access, for 5.2 GB. Seafile's documentation backs up the three databases first and the data afterwards, with Seafile running, as its storage only adds blocks: 1 minute 31 seconds, for 2.8 GB. We restored both into empty volumes, and the files, users, shares, links and versions came back. Two things we learned:

  • A restored Nextcloud starts in maintenance mode, as the backup was made in it. Run occ maintenance:mode --off after restoring.
  • Seafile's database dumps do not create the databases or its database user, so we created them before importing. Seafile's own check, seaf-fsck.sh, ran without complaint afterwards.

Both started again by themselves after a reboot.

How we ran Seafile

Seafile's official Docker files run five containers: Seafile, MariaDB, Redis, a Caddy that configures itself through the Docker socket, and SeaDoc, the editor for Seafile's own document format. Two did not fit our pattern:

  • Its Caddy. It needs the Docker socket, and every app on our servers shares one Caddy. We left it out and gave Seafile a site block in our Caddy instead.
  • SeaDoc. It listens on port 80 inside its container, as Seafile does, so the two cannot share a pod. We switched it off with ENABLE_SEADOC=false. Ordinary files work as before; only Seafile's own .sdoc documents need it.

Everything else fitted: the database and Redis at 127.0.0.1 in the pod, and the passwords from the .env file as Podman secrets, which the image reads as ordinary variables. As a user seafile, created like nextcloud in step 1 of the Nextcloud guide:

for s in seafile-db-password seafile-db-root-password seafile-jwt-key; do
  printf %s "$(openssl rand -hex 24)" | podman secret create $s -
done
printf %s "$(openssl rand -hex 16)" | podman secret create seafile-admin-password -

~/.config/containers/systemd/seafile.pod:

[Pod]
PodName=seafile
PublishPort=127.0.0.1:8170:80
AddHost=seafile.example.com:host-gateway

[Install]
WantedBy=default.target

seafile-db.container:

[Container]
ContainerName=seafile-db
Image=docker.io/library/mariadb:10.11
Pod=seafile.pod
Volume=seafile-db:/var/lib/mysql
Environment=MARIADB_AUTO_UPGRADE=1
Secret=seafile-db-root-password,type=env,target=MARIADB_ROOT_PASSWORD
AutoUpdate=registry

[Service]
Restart=always

seafile-redis.container:

[Container]
ContainerName=seafile-redis
Image=docker.io/library/redis:8-alpine
Pod=seafile.pod
Exec=redis-server --save "" --appendonly no
AutoUpdate=registry

[Service]
Restart=always

seafile-app.container:

[Unit]
After=seafile-db.service seafile-redis.service

[Container]
ContainerName=seafile-app
Image=docker.io/seafileltd/seafile-mc:13.0-latest
Pod=seafile.pod
Volume=seafile-data:/shared
Environment=SEAFILE_SERVER_HOSTNAME=seafile.example.com SEAFILE_SERVER_PROTOCOL=https
Environment=SEAFILE_MYSQL_DB_HOST=127.0.0.1 SEAFILE_MYSQL_DB_PORT=3306 SEAFILE_MYSQL_DB_USER=seafile
Environment=SEAFILE_MYSQL_DB_CCNET_DB_NAME=ccnet_db SEAFILE_MYSQL_DB_SEAFILE_DB_NAME=seafile_db SEAFILE_MYSQL_DB_SEAHUB_DB_NAME=seahub_db
Secret=seafile-db-password,type=env,target=SEAFILE_MYSQL_DB_PASSWORD
Secret=seafile-db-root-password,type=env,target=INIT_SEAFILE_MYSQL_ROOT_PASSWORD
Secret=seafile-jwt-key,type=env,target=JWT_PRIVATE_KEY
Environment=INIT_SEAFILE_ADMIN_EMAIL=admin@example.com
Secret=seafile-admin-password,type=env,target=INIT_SEAFILE_ADMIN_PASSWORD
Environment=CACHE_PROVIDER=redis REDIS_HOST=127.0.0.1 REDIS_PORT=6379
Environment=TIME_ZONE=Europe/Stockholm ENABLE_SEADOC=false
AutoUpdate=registry

[Service]
Restart=always
TimeoutStartSec=900

Start it with systemctl --user daemon-reload and systemctl --user start seafile-pod; the log says Successfully created seafile admin when it is ready. The block in Caddy's ~/Caddyfile:

seafile.example.com {
    reverse_proxy 127.0.0.1:8170
    header Strict-Transport-Security "max-age=15552000; includeSubDomains"
}

To back up, dump ccnet_db, seafile_db and seahub_db with mariadb-dump as MariaDB's root user, then export the seafile-data volume, in that order.

Licence and cost

We read the current licence texts and pricing pages on 14 October 2026.

  • Nextcloud is open source under the AGPL, made by Nextcloud GmbH in Germany. Everything we tested is in the free version. Enterprise subscriptions, with support, start at 100 users: 71.29 euros per user a year for Standard, 104.99 for Premium and 204.75 for Ultimate, excluding VAT. Below 100 users, Nextcloud points to Nextcloud One, its managed hosting.
  • Seafile Community Edition is open source: its server core is under the AGPLv3 and its web interface under the Apache License 2.0. Seafile Professional Edition is a separate edition under Seafile's own licence. Seafile's comparison lists these as Pro only: full-text search, file locking, fine-grained folder permissions, syncing users and groups from LDAP or Active Directory, single sign-on with ADFS, roles, remote wipe, an audit log, virus scanning, S3 storage and clusters. Pro is free for up to 3 users, 100 US dollars a year in total for up to 9, and 48 dollars (44 euros) per user a year from 10 to 249 users, with lower prices above that. Community Edition can still sign users in against LDAP or Active Directory and use two-factor authentication.

For a company that runs file sync for its own staff, both free versions allow it at no cost. Hosted on your own server, both keep your files in Sweden.

Google Drive, Dropbox and OneDrive today

What follows is from Google's, Dropbox's and Microsoft's own pricing pages, not from our tests: we did not sign up for any of them. Google and Dropbox showed us prices in euros, Microsoft's US page in dollars.

Service and planPrice per user a monthStorage and limits
Google Workspace Business Starter€6.80 with a one-year commitment, €8.10 flexible, excluding tax30 GB per user, pooled; up to 300 users
Google Workspace Business Standard€13.60 with a one-year commitment, €16.20 flexible, excluding tax2 TB per user, pooled; up to 300 users
Dropbox Standard€12 billed yearly, €14.50 billed monthlyfrom 1 user; starts at 3 TB for the team; deleted files restored for 180 days
Dropbox Advanced€18 billed yearlyfrom 3 users; starts at 15 TB; 1 year of history; single sign-on
Microsoft 365 Business Basic$7.00, paid yearly1 TB of OneDrive per user; web and mobile Word, Excel and PowerPoint; up to 300 users

Sources: Google Workspace pricing, Dropbox plans and Microsoft 365 for business, all checked 2026-10-14. Google also advertised a discount for new customers at the time, which we left out.

For 10 people, that is €1,632 a year for Business Standard and €1,440 for Dropbox Standard, both billed yearly, and it grows with every person you add. A server for Nextcloud or Seafile costs the same for 3 people as for 30, as long as the disk is big enough.

What you give up compared with Google Drive, Dropbox and OneDrive

On your own server, the files stay in Sweden, the price does not follow the number of people, and nobody can change your plan for you. But be honest about what you leave behind:

  • Office documents in the browser. Workspace comes with Google Docs and Sheets, and Microsoft 365 Business Basic with Word, Excel and PowerPoint on the web, where people edit the same file at once. Our test had no editing in the browser: Nextcloud can add an office server, which we did not set up, and we switched off Seafile's own editor, SeaDoc.
  • Uptime and on-call. Google's service level agreement promises Drive at least 99.9 % uptime each month (checked 2026-10-14). Our setup is one server: both came back by themselves after a reboot, Nextcloud's backup takes it offline for a few minutes, and if the server stops at night, someone of yours has to notice and fix it.
  • Phone and desktop apps. Both projects have desktop and phone apps, but we tested only the command-line clients and the web. Drive, Dropbox and OneDrive have apps your staff probably already know.
  • Everything around the files. Workspace and Microsoft 365 include business email and video meetings in the same account. Nextcloud has calendars and contacts; Seafile does files only.
  • Storage. Business Standard gives 2 TB per user and Dropbox Standard starts at 3 TB for the team. Your own server has what its disk holds: 250 GB on the Standard Micro we suggest, and our test files and history took 3 to 5.4 GB.
  • Compliance reports. No third party has audited your server. When a customer or an auditor asks, you answer with your own routines for updates, backups and access.

Which one to pick

Nextcloud suits a company that wants its files and its everyday groupware in one place: calendars, contacts, file sharing with permissions on any folder, and more apps if you want them, all in the free version, with a large community and many guides. It used the least memory, about 190 MB at rest. Its weak points are slow sync of large files that change, since every change uploads the whole file again, versions that take as much disk as the files themselves, a heavier web interface, and a backup that takes it offline. Follow the Nextcloud guide. Like that guide, we suggest a Standard Micro, whose 250 GB of disk leaves room for files and versions; our test ran on a VC-P Alloy with the same 2 vCPU and 8 GB.

Seafile suits a company whose work is files: designers, video, engineering, or anyone with large files that change often. It synced five times faster, sent 15 MB where Nextcloud sent 1.3 GB, kept history for almost no disk, can be backed up while it runs, and its encrypted libraries are encrypted before files leave the computer. Its weak points are files only, with no calendars or contacts, more memory at rest, search in file contents, file locking and folder permissions only in Pro, which is free for 3 users and then paid, the password change that cuts off sync clients, and an official setup we had to adapt, without SeaDoc. We have no guide for it yet: the files in How we ran Seafile are what we ran, on top of the Podman guide. A Standard Micro suits it too.

Both together used about 710 MB at rest, so one server can run both, as ours did.

Run it on your own server

VC-S Micro

€7.99/mo

vCPU
2
Memory
8 GB
Storage
250 GB
Transfer
10 TB
Standard
HDD · RAID 10
  • Full root access
  • Native /64 IPv6
  • RAID-protected storage
  • Malmö, Sweden
  • Month to month, no lock-in
  • 7-day money-back guarantee

These steps were tested on VC-P Alloy. VC-S Micro has the same number of vCPUs and memory on an older CPU, and 250 GB of storage instead of 60 GB, which matters more here.

All guides