Godwit Sync is a command-line tool for migrating and continuously syncing data between S3-compatible object stores and local filesystems, in three directions: filesystem-to-S3, S3-to-filesystem, and S3-to-S3. Before any transfer it builds an editable SQLite plan listing the exact objects and byte counts that will move; run it with --plan-only to inspect or edit the plan first. Incremental runs move only objects whose size, ETag, or mtime changed since the last completed run. A killed run re-plans pending and failed objects instead of skipping them. Every run is verifiable: real per-object MD5 checksums (not just ETags), on-demand checksum verification with plan verify, a status REST endpoint, Prometheus metrics, and automation-friendly exit codes for cron and CI. Transfers are parallel with multipart uploads and partial-upload recovery, resumable from the exact checkpoint after a crash, rate-limited on reads and writes, and true stream-to-stream (object data is never staged or cached on local disk). Migrations are version-aware, moving every object version rather than only the latest, and object metadata and tags are preserved exactly as stored at the source. Godwit Sync works with any S3-compatible endpoint on both sides, including AWS S3, MinIO, Cloudflare R2, Backblaze B2, Wasabi, and DigitalOcean Spaces, plus self-hosted storage such as RustFS, Garage, SeaweedFS, versitygw, and QNAP QuObjects. It is compatible with immutable Object Lock (WORM) target buckets. The license is validated locally and offline, and data moves directly between source and destination without passing through Godwit Sync servers. Available for Linux, macOS, Windows, and FreeBSD, plus official Docker images.
A startup from Portugal that is founded by Sergii Levin.
Plan-first workflow
Preview the exact objects and bytes in an editable plan before anything transfers
Sync Only What Changed
Run the same command from your own cron or systemd timer and forget it. The first execution is a full sync; every subsequent run compares each source object against confirmed-completed metadata and transfers only what changed. A 500,000-object bucket with 1,000 daily changes skips 499,000 destination lookups and transfers just the 1,000, then exits with a status endpoint and exit code that prove the run finished.
Observable & Verifiable
Know exactly what's happening at every moment. Integrate with your existing monitoring stack and verify every byte after it lands.
Resumable transfers
Continue from the exact checkpoint after a crash, no restart from zero
Rate limiting
Control read and write throughput so a job never overwhelms the source
Version history
Migrate every object version, not just the latest
Metadata preserved
Object metadata and tags copied exactly as stored at the source
Stream-to-stream
Object data is never staged or cached on local disk
Immutable targets
Compatible with Object Lock / WORM buckets
DevOps, SREs, sysadmins, and technical self-hosters who run S3-compatible object storage and need predictable, verifiable migration and ongoing sync (backup, DR, replication) from the command line.
Plan-first and proof-driven: it shows you exactly what will move before it moves, then proves every run finished with per-object MD5 checksums, metrics, and an on-demand plan verify. Re-runs are incremental: only changed objects transfer, planned from a local baseline with zero destination calls.
Named after the bird with the longest non-stop migration on Earth. Godwit Sync was built out of frustration with sync tools that report success without proof: to turn risky migrations and fragile cron jobs into planned, observable runs.
Tools like rclone move data but can't prove a scheduled run actually finished; Godwit proves it (status endpoint, metrics, exit codes, checksum verification). And unlike restic/Borg, it keeps your data as native objects in your own bucket: directly usable, with immutability via bucket Object Lock.
Go, minio-go (any S3-compatible endpoint), SQLite, Cobra, Bubble Tea, and Prometheus: on a hexagonal architecture.
We have collected here some useful links to help you find out if Godwit is good.
Check the traffic stats of Godwit on SimilarWeb. The key metrics to look for are: monthly visits, average visit duration, pages per visit, and traffic by country. Moreoever, check the traffic sources. For example "Direct" traffic is a good sign.
Check the "Domain Rating" of Godwit on Ahrefs. The domain rating is a measure of the strength of a website's backlink profile on a scale from 0 to 100. It shows the strength of Godwit's backlink profile compared to the other websites. In most cases a domain rating of 60+ is considered good and 70+ is considered very good.
Check the "Domain Authority" of Godwit on MOZ. A website's domain authority (DA) is a search engine ranking score that predicts how well a website will rank on search engine result pages (SERPs). It is based on a 100-point logarithmic scale, with higher scores corresponding to a greater likelihood of ranking. This is another useful metric to check if a website is good.
The latest comments about Godwit on Reddit. This can help you find out how popualr the product is and what people think about it.
Do you know an article comparing Godwit to other products?
Suggest a link to a post with product alternatives.
Is Godwit good? This is an informative page that will help you find out. Moreover, you can review and discuss Godwit here. The primary details have been verified within the last quarter. So they could be considered up to date. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.