dvc-s3
s3 plugin for dvc
What it is and what it does
dvc-s3 is a plugin that extends DVC (Data Version Control) to use Amazon S3 as a remote storage backend. It bridges DVC's data management workflow with AWS S3, allowing you to push, pull, and manage versioned datasets and model artifacts in S3 buckets. The plugin handles authentication, data transfer, and integration with DVC's core commands.
Under the hood, it relies on s3fs, aiobotocore, and botocore to communicate with S3. It's designed for teams using DVC to version control large datasets or machine learning models and want to store them durably in AWS rather than local or generic cloud storage. The plugin is in Beta status but actively maintained, supporting Python 3.9 through 3.14.
Use it for:
- Store DVC-tracked datasets and ML models in S3 for team collaboration and CI/CD pipelines.
- Use S3 as a shared remote for DVC projects across multiple developers or machines.
- Integrate DVC data versioning with AWS-native ML workflows and SageMaker pipelines.
- Back up and archive large versioned datasets in S3 while keeping local working copies small.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Enables DVC to read from, write to, and manage data on Amazon S3 as a remote storage backend.
Yes, if you use DVC and need S3 as your remote storage. The plugin is actively maintained, has low install friction, carries a permissive license, and integrates cleanly with DVC's workflow. No known vulnerabilities. Install it when you're ready to configure S3 as a DVC remote; it's a straightforward addition to an existing DVC setup.
Install
dvc-s3 on PyPI
pip
pip install dvc-s3uv
uv add dvc-s3poetry
poetry add dvc-s3Installing dvc-s3
Before you install
Low friction install with a wheel distribution. Actively maintained as of 2026-08-10 with recent releases. Depends on dvc and a stack of AWS-related libraries (aiobotocore, botocore, s3fs) which are themselves stable and widely used.
License in practice
Apache-2.0 permissive license allows use in commercial and private projects with minimal restrictions; you must retain license and copyright notices.
Quickstart
pip install dvc-s3
import dvc.api
# Configure S3 remote in DVC, then push/pull data:
# dvc remote add -d myremote s3://my-bucket/path
# dvc push
Requires AWS credentials (via environment variables, IAM role, or AWS config file) to authenticate with S3.
Verify before relying
- Whether the plugin works with S3-compatible services (MinIO, DigitalOcean Spaces, etc.) beyond AWS S3.
- Performance characteristics and cost implications of using this plugin at scale.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 7 — dvc, funcy, fsspec, s3fs, aiobotocore, botocore, flatten_dict |
| Maintenance | actively maintained — 210 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,177,680/month — #4,264 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: dvc_s3-3.3.0-py3-none-any.whl
Keywords: dvc, s3
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
git-remote-s3Enables Git to use Amazon S3 as a remote…
permissive · top 15,000 on PyPI
s3fss3fs provides a Python filesystem interface to…
permissive · top 100 on PyPI
fs-s3fsS3FS provides a PyFilesystem interface to…
permissive · top 15,000 on PyPI
dvc-gsEnables DVC to read from and write to Google…
permissive · top 15,000 on PyPI
dvc-httpEnables DVC to store and retrieve data over…
permissive · top 5,000 on PyPI
dvc-objectsProvides filesystem and object-database…
permissive · top 5,000 on PyPI
aiomotoProvides async-compatible AWS service mocks for…
permissive · top 15,000 on PyPI
django-s3-storageProvides Django file storage backends that read…
permissive · top 15,000 on PyPI
minioProvides high-level Python APIs to connect to…
permissive · top 5,000 on PyPI
snakemake-storage-plugin-s3Enables Snakemake workflows to read from and…
permissive · top 15,000 on PyPI