{"id":98068,"date":"2026-10-10T19:50:00","date_gmt":"2026-10-10T23:50:00","guid":{"rendered":"https:\/\/overcentral.com\/en\/?p=98068"},"modified":"2026-09-29T08:17:00","modified_gmt":"2026-09-29T12:17:00","slug":"emdash-zero-egress-media-sites-98068","status":"publish","type":"post","link":"https:\/\/overcentral.com\/en\/emdash-zero-egress-media-sites-98068\/","title":{"rendered":"EmDash Zero Egress: Why Media Sites Need Caution"},"content":{"rendered":"<p>Everyone says the same thing about EmDash CMS: zero egress fees make it a no-brainer for media-heavy sites. Store all the video, all the images, all the audio you want \u2014 Cloudflare&#8217;s R2 charges nothing to serve them. Compared to AWS S3, where egress can eat your budget alive, this sounds like the obvious <a href=\"https:\/\/overcentral.com\/en\/ichra-choice-arrangements-label-97925\/\" title=\"ICHRA Gets CHOICE Arrangements Label from CMS, SBA\" data-iacss-internal=\"1\">choice<\/a>.<\/p>\n<p>It&#8217;s not that simple. Zero egress solves one problem and creates three others that most coverage quietly skips. For media-heavy sites, the total cost picture is more complex \u2014 and in some scenarios, more dangerous \u2014 than the headline suggests.<\/p>\n<h2>How Zero Egress Actually Works<\/h2>\n<p>Cloudflare&#8217;s R2 object storage charges zero for data transfer out. Period. No surprise egress bills when a viral post spikes traffic. That&#8217;s genuine.<\/p>\n<p>But R2 is only one layer in EmDash&#8217;s stack. Every page view on a media-heavy site also hits:<\/p>\n<ul>\n<li><strong>Workers<\/strong> \u2014 billed per request and per CPU millisecond<\/li>\n<li><strong>D1<\/strong> \u2014 billed per row read and written<\/li>\n<li><strong>KV<\/strong> \u2014 billed per read and write operation<\/li>\n<\/ul>\n<p>A single page load with 12 embedded images triggers 12 R2 reads (zero egress, fine), 12 D1 queries for metadata, 1 Worker invocation for the page render, and potentially KV lookups for session state. That&#8217;s four different billing meters firing simultaneously on one user visit.<\/p>\n<p>The zero egress win gets diluted fast.<\/p>\n<h2>The Hidden Cost Pattern<\/h2>\n<p>Here&#8217;s the specific scenario that hurts. A media site publishes a longform article with 20 high-res images. Normal traffic day: 10,000 visits. That&#8217;s 200,000 R2 reads (free egress, good), 200,000 D1 row reads (billed), 10,000 Worker invocations (billed), plus CPU time for image processing if any transformations run.<\/p>\n<p>On AWS S3 with a traditional host, you&#8217;d pay egress fees on the images \u2014 maybe $30-50 for that day depending on file sizes. On EmDash, you pay $0 for the image transfer but $15-25 for the database and compute layers.<\/p>\n<p>The aggregate cost is often similar. The difference is <em>predictability<\/em>. S3 egress scales linearly with file size \u2014 easy to model. EmDash&#8217;s multi-meter billing scales with request patterns and CPU duration \u2014 much harder to forecast.<\/p>\n<h2>Where the Advice Breaks Down<\/h2>\n<p>The common advice \u2014 &#8220;zero egress = cheaper for media&#8221; \u2014 assumes media delivery is the dominant cost. For sites where images are small (under 200KB) and traffic is moderate (under 50,000 visits\/month), that&#8217;s often true. The Workers and D1 costs stay low enough that zero egress genuinely saves money.<\/p>\n<p>The advice breaks down in three specific cases:<\/p>\n<p><strong>High-traffic media sites<\/strong> (500,000+ visits\/month). The Workers cost alone at $0.30 per million requests adds up. A site serving 10 requests per page view (images, CSS, JS, API calls) hits 5 million Worker invocations daily. That&#8217;s $1.50\/day just in request fees, plus CPU time charges on top. Over a month, the compute layer rivals what S3 egress would have cost.<\/p>\n<p><strong>Video-heavy sites<\/strong>. Serving video files through Workers incurs CPU time for streaming. A 10-minute video at 1080p can consume 30-60 seconds of CPU time per view. At $0.02 per million milliseconds of CPU time, 10,000 views cost roughly $6-12 in compute alone \u2014 before any storage or database charges. Traditional hosting with flat-rate bandwidth would have been cheaper.<\/p>\n<p><strong>Sites with dynamic transformations<\/strong>. Every image resize, format conversion, or thumbnail generation runs on Workers CPU time. A gallery site serving 200 images per visit with auto-formatting can burn through the free CPU tier in hours.<\/p>\n<h2>The Second-Order Effect Most Coverage Misses<\/h2>\n<p>Here&#8217;s what I haven&#8217;t seen anyone address: zero egress removes the <em>budget ceiling<\/em> that flat-rate hosting provides. On a traditional host, your $50\/month plan caps bandwidth at some generous limit. You can&#8217;t accidentally blow past it because the host throttles or the site slows down under load.<\/p>\n<p>On EmDash, there is no hard cap. The system keeps serving traffic, the meters keep ticking, and your bill keeps climbing. A coordinated bot attack downloading every image on your site \u2014 10,000 requests <a href=\"https:\/\/overcentral.com\/en\/meta-launches-zgateway-proxy-handles-1-billion-ops-per-second\/\" title=\"Meta Launches ZGateway Proxy, Handles 1 Billion Ops Per Second\" data-iacss-internal=\"1\">per second<\/a> from 5,000 IPs \u2014 costs real money. Cloudflare&#8217;s WAF can rate-limit by IP, but distributed attacks from thousands of endpoints bypass simple rate limits. No spending cap exists.<\/p>\n<p>For a media-heavy site where image assets are large and numerous, an orchestrated scrape could cost hundreds or thousands of dollars before you notice. The zero egress benefit becomes a liability: because serving data costs nothing per byte, there&#8217;s no natural friction point that limits abuse.<\/p>\n<h2>What This Means for Different Site Types<\/h2>\n<p><strong>Small blogs with occasional images<\/strong> \u2014 EmDash wins. Zero egress is genuinely cheaper. Your Workers and D1 costs stay under $5\/month.<\/p>\n<p><strong>Mid-size publishers<\/strong> (50,000-500,000 visits\/month) \u2014 It depends on image sizes and transformation needs. Run the math on your specific patterns. The zero egress benefit is real but often offset by compute costs.<\/p>\n<p><strong>Large media operations<\/strong> \u2014 Traditional hosting with flat-rate bandwidth and CDN bundling often works out cheaper. The predictability of a fixed monthly bill matters more than marginal per-request savings.<\/p>\n<p><strong>Video platforms<\/strong> \u2014 Avoid EmDash for now, unless you&#8217;re willing to actively monitor and cap your Workers CPU usage.<\/p>\n<h2>The Real Game Changer Isn&#8217;t Zero Egress<\/h2>\n<p>The actual innovation EmDash brings to media-heavy sites isn&#8217;t free data transfer. It&#8217;s the <em>architecture<\/em> \u2014 serving content from the edge without spinning up a full server. That&#8217;s valuable. But it&#8217;s valuable in a different way than the marketing claims.<\/p>\n<p>For a site that needs global CDN distribution, instant scaling, and no server management, EmDash&#8217;s stack (Workers + R2 + D1) is compelling. The zero egress is a bonus, not the headline.<\/p>\n<p>Treat it as one piece of a cost puzzle, not a blanket solution. Model your actual traffic patterns, image sizes, and CPU needs before committing. The zero egress promise is real \u2014 but it&#8217;s surrounded by bills that aren&#8217;t zero at all.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Everyone says the same thing about EmDash CMS: zero egress fees make it a no-brainer for media-heavy sites. Store all the video, all the images, all the audio you want \u2014 Cloudflare&#8217;s R2 charges nothing to serve them. Compared to AWS S3, where egress can eat your budget alive, this sounds like the obvious choice. [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":100205,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/cards.overcentral.com\/cards\/en\/98068.png","fifu_image_alt":"EmDash Zero Egress: Why Media Sites Need Caution","footnotes":""},"categories":[31],"tags":[],"class_list":["post-98068","post","type-post","status-publish","format-standard","has-post-thumbnail","category-technology"],"fifu_image_url":"https:\/\/cards.overcentral.com\/cards\/en\/98068.png","fifu_image_alt":"EmDash Zero Egress: Why Media Sites Need Caution","_links":{"self":[{"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/posts\/98068","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/comments?post=98068"}],"version-history":[{"count":1,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/posts\/98068\/revisions"}],"predecessor-version":[{"id":100206,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/posts\/98068\/revisions\/100206"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/media\/100205"}],"wp:attachment":[{"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/media?parent=98068"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/categories?post=98068"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/tags?post=98068"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}