Skip to content

Project

Cloudflare R2

Cloudflare R2 is an S3-compatible object storage service with no egress fees, used to store media, data lake files, and other large-scale application data.

Known aliases

  • R2
  • R2 Object Storage

Current stories

buildOne report1 publisher

Cloudflare adds on-demand production profiling for Workers and Durable Objects

Cloudflare now lets Workers and Durable Objects users take on-demand CPU and memory profiles in production and view them as flamegraphs. Each capture runs for a window the user sets and can be saved from the CLI to a .pprof file for further analysis.

Reality

Evidence60
Adoption20
Hype gap+5
Incentives65
Confidence70
buildOne report1 publisher

Cloudflare's K2 trades a second of produce latency for an event log kept in R2

Cloudflare's K2 streaming beta keeps its event log in R2 object storage at a stated cost of about one second of p99 produce latency. Its case is price and elasticity, so pipelines with many consumers or tight delivery windows have numbers to check before billing starts.

Publishers:infoq.com

Reality

Evidence55
Adoption12
Hype gap+20
Incentives55
Confidence50
buildConfirmed3 publishers

Cloudflare folds Iceberg ingest, catalog and SQL on R2 into one GA product called Basin

Cloudflare made its Data Platform generally available as Basin, three serverless services that ingest, catalog and query Apache Iceberg tables on R2. Outside Iceberg engines read the same tables, so Workers teams can price Basin SQL against a warehouse on identical data.

Perspective Coverage

3 publishers
Builder
Builder 39%
Operator
Operator 38%
Investor
Investor 23%

Reality

Evidence55
Adoption25
Hype gap+25
Incentives75
Confidence60
buildOne report1 publisher

Cloudflare K2 runs a partitioned event log on R2 with about a second of p99 produce latency

Cloudflare opened K2, a serverless event log built on R2 object storage, to public beta at about one second of p99 produce latency. For that wait, teams get producers decoupled from consumers and no Kafka cluster of their own to run.

Reality

Evidence40
Adoption
Not scored
Hype gap+15
Incentives75
Confidence45
buildOne report1 publisher

Cloudflare AI Search goes GA with pixel-level image search and a November 1 billing start

Cloudflare made AI Search generally available with native image embeddings and PDF OCR, and will start billing for it on November 1, 2026. Which embedding model an instance runs now decides whether an image query searches pixels or a caption.

Reality

Evidence35
Adoption
Not scored
Hype gap+10
Incentives85
Confidence45
buildOne report1 publisher

One terabyte of static traffic costs $205 through Azure Front Door and $0 on Cloudflare Workers

Azure Front Door charges about $205 a month for a terabyte of static files that Cloudflare Workers serves for $0, per a dev.to list-price comparison. Past the included allowance, each paid Azure route bills by the gigabyte, so the service a site ships through puts the same terabyte at about $78 to $205.

Publishers:dev.to

Reality

Evidence55
Adoption
Not scored
Hype gap+15
Incentives30
Confidence55
buildOne report1 publisher

One --exclude-table-data flag shrinks this nightly Postgres backup; a separate R2 lifecycle rule keeps it a year

Munchable's nightly GitHub Actions job writes a full dump kept about 30 days plus a catalogue-free core dump kept a year. The preflight that fixed its first failure reads only the host and port out of the connection secret.

Publishers:dev.to

Reality

Evidence68
Adoption22
Hype gap−8
Incentives
Not scored
Confidence60
buildOne report1 publisher

Scoping an agent to one Worker filters what Cloudflare's API returns to it

Cloudflare has shipped four Workers roles at three scopes to all customers, so an agent's API token can now carry one of them for a single application. Resource-level control for D1, R2 and KV is still a plan.

Reality

Evidence62
Adoption30
Hype gap+10
Incentives80
Confidence58
buildOne report1 publisher

A dev-server alias kept a cron handler out of the deployed Cloudflare Worker

A week building an image SaaS on Cloudflare Workers produced nine failures. In the five shown in code, two come from the TanStack Start plugin's build behaviour and three from React timing and captcha logic that follow the code anywhere.

Publishers:dev.to

Reality

Evidence62
Adoption20
Hype gap+8
Incentives35
Confidence58
buildOne report1 publisher

An internal app pushed its reporting reads into the browser rather than resize D1

The mechanism is RxDB holding a working copy on the device and R2 holding periodic snapshots, so a first sync is one download plus a small delta. Whether it transfers depends on who may hold every row.

Publishers:dev.to

Reality

Evidence32
Adoption12
Hype gap+18
Incentives30
Confidence58
buildOne report1 publisher

The transcription pipeline where the model was the easy part

A Cloudflare Workers build log argues that surviving retries, duplicate callbacks and half-failed batches is database work, not model work. The SQL WHERE clause is the safety feature.

Publishers:dev.to

Reality

Evidence27
Adoption20
Hype gap+18
Incentives62
Confidence46
buildOne report1 publisher

A $5-a-month monitoring SaaS on Workers, Turso and R2 is a cost datapoint, not a blueprint

A solo founder says their Cloudflare-native stack runs a multi-tenant monitoring product for about $5 a month across its first hundred customers. The bill is the finding. The 60-second cron is the caveat.

Publishers:dev.to

Reality

Evidence42
Adoption9
Hype gap+38
Incentives68
Confidence46
buildOne report1 publisher

At 70,000 images, next/image is not your optimizer, it is your outage

A wallpaper site's post-mortem on serving 70,000-plus 4K masters through Next.js 15 shows the optimizer failing on Referer checks and edge CPU ceilings, not on throughput.

Publishers:dev.to

Reality

Evidence34
Adoption18
Hype gap+34
Incentives68
Confidence44
buildOne report1 publisher

The .mp4 that was never H.264: how a healthy serving path hid a codec bug

A shared video played on every desktop and stalled at 0:00 on every iPhone. The infrastructure was clean; the defect was inside the file, one layer below anything the server could report.

Publishers:dev.to

Reality

Evidence42
Adoption12
Hype gap+18
Incentives62
Confidence45
buildOne report1 publisher

The duplicate def that ate the trim, and the lint rule nobody was running

A 16,000-line Flask app shipped a GIF trimmer that accepted start and end times and threw them away. Python does not warn about redefinition. Pylint E0102 does, for free.

Publishers:dev.to

Reality

Evidence58
Adoption20
Hype gap+12
Incentives68
Confidence55