Cut the S3 bill for your build artifacts.

DeltaGlider is an S3 proxy that spots similar files and stores them as small binary diffs instead of full copies. Each build your CI ships shares most of its bytes with the previous one; DeltaGlider stores the difference and rebuilds the rest on read. Same S3 API — your SDKs don't change.

91 MB
148 KB Encrypted delta
The mechanism

It works on already-compressed archives

61,400%
smaller on compressed input — a 91 MB ZIP (a real ReadonlyREST plugin) stored as a 148 KB diff against the previous release.

Release after release, a ZIP or JAR contains the same entries in the same order — same manifest.mf, same icons, same bundled CSS. The bytes repeat, so the binary diff between two releases stays tiny even though each file is internally compressed.

Read the engineering note

The cost

What it costs in speed

Measured with the repo's own benchmark harness — same artifacts, four modes, one Hetzner region, single stream:

ModePUTCold GETWarm GET
Passthrough (baseline)106 MB/s97 MB/s90 MB/s
Encryption only94 MB/sno slowdownno slowdown
Delta compression9 MB/s89 MB/sno slowdown

The tax lands on the write path, once, where CI is the one waiting: the xdelta3 encode makes a single-stream upload roughly twelve times slower. Reads — the path a person actually feels — pay about 30% on time to first byte when cold and nothing once the reference is warm. Encryption is effectively free.

Dogfooding

ReadonlyREST's build catalog now lives on Hetzner

Beshu Tech migrated its own ReadonlyREST build catalog — 1.71 TB on AWS S3 — to Hetzner via DeltaGlider. It is stored in 134 GB, roughly 1,270% smaller, and serves production downloads today.

Verified results

Version Size (Encrypted) Verdict
1.69.0
2,866 MB 32.4 MB -98.9%
Excellent
1.38.0
13.7 GB 3.3 GB -75.6%
Fair cross-major ES range
1.17.1
26 MB 6.8 MB -74.0%
Small dataset, dominated by reference
Full migration
1.71 TB 134 GB
Complete
Playbook

What a migration looks like

01

Deploy

Run DeltaGlider in your VPC. Point it at your existing AWS bucket — or a new Hetzner / Backblaze / Cloudflare bucket — anything S3-compatible.

02

Scan

Use the Delta Efficiency Panel to scan a sample prefix. Verify compression is in the range that justifies migration.

03

Stage

Stage migration bucket-by-bucket using per-bucket aliases. Freeze writes during the window with quota_bytes: 0.

04

Cutover

Cut over your apps' S3 endpoint to DeltaGlider. Your SDKs don't change.

05

Replicate

Run replication rules to mirror new writes to a DR region if you need one.

Next step