On average, 53% of mobile users abandon a page if it takes longer than 3 seconds to load. Our measurements on Ukrainian projects show even harsher results: every extra 100 ms to TTFB reduces conversion by 2–5% in e-commerce, while CPL in lead generation increases by 7–12%.
I’m talking about edge rendering: rendering at the network edge. This isn’t a trendy term from a CDN provider presentation, but a practical tool the BUSINESS SITE team has been using to speed up sites since 2011 and which today delivers the most predictable gains in Core Web Vitals. If you want to bring strategy, architecture and implementation checklists together: it’s worth reading to the end. In this text I’ll break down how we make decisions, which metrics we track, which trade-offs we consider, and how we translate everything into ROI figures.
Edge rendering: what it is and how it speeds things up

Technically the chain looks like this: the browser reaches the nearest POP (point of presence) of the edge CDN, an edge function runs there (for example, on a V8 runtime, Deno or WASM), pulls data from the cache or origin (via an origin shield), builds the HTML (server-side rendering at the edge) and returns the response immediately. TLS termination happens at the edge, and transport runs over HTTP/2 or HTTP/3 (QUIC), which further reduces handshake overhead.
Edge rendering speeds up site loading

We manage speed through clear metrics:
- Time to First Byte (TTFB): by reducing network latency and executing logic at the edge.
- First Contentful Paint (FCP) – by early delivery of the HTML skeleton and critical CSS.
- Largest Contentful Paint (LCP): by serving the large-block content (hero image/heading) from a CDN and optimizing images.
- Cumulative Layout Shift (CLS) – with predictable block sizes, responsive critical CSS and careful hydration.
Acceleration mechanisms are tied to infrastructure: geo-distribution of POPs, origin shield to protect the origin and increase cache hit ratio, TLS termination at the edge, as well as modern protocols HTTP/2 and HTTP/3 (QUIC).
From practice: for e-commerce with traffic from Ukraine and the EU, edge rendering on nearby POPs reduced TTFB from 500–700 ms to 80–150 ms, LCP improved from ~3.5 s to ~2.1 s. In a SaaS project with a personal dashboard, streaming SSR allowed rendering the working skeleton in 200–300 ms, and then hydrating complex widgets without the interface freezing.
SSR edge and SSG+edge for site speed

There are three scenarios:
- Full SSR at the edge: when you need dynamic HTML for every request: prices, availability, A/B variants. Great for product and category pages with fast invalidation.
- SSG + edge cache – static generation (SSG) with aggressive caching and minimal TTFB. Suitable for landing pages, content pages, FAQs, blogs.
- ISR (incremental static regeneration) – the golden mean: static HTML is updated at the edge on a schedule or on the first cache miss after TTL; combines the speed of SSG with the freshness of SSR.
The choice depends on data dynamics and traffic peaks: if content is updated hourly, ISR; if it’s updated every minute and A/B control is needed, SSR at the edge; if once a day, SSG with a long cache. A combination of SSG and edge rendering often wins on cost and stability.
CDN and edge functions: selection and configuration

The role of an edge CDN is to cache and deliver, the role of edge functions is to execute logic close to the user. Together they provide minimal TTFB. Key settings:
- cache-control and stale-while-revalidate for a stable hit,
- cache key design taking into account language, currency, geo and template version,
- origin shield for offloading the backend and uniform invalidation.
Among implementations we use Cloudflare Workers, Fastly Compute and Vercel Edge. Each approach has its own strength: Cloudflare — a wide POP network and a mature WAF, Fastly — fine control over cache keys and performance, Vercel — convenient integration with frontend frameworks and ISR. In BUSINESS SITE projects we design abstractions to preserve portability between providers and reduce the risk of vendor lock-in.
Caching dynamic content at the edge

Dynamic content at the edge is cached reliably with a well-thought partitioning:
- public vs private: public pages with personalization via Edge Side Includes or device-aware branching; private responses – via short TTL and revalidation.
- stale-while-revalidate: users get a fast cached response while an update happens in the background.
- cache invalidation: invalidation by events (price update, removal from sale) and by versions.
Edge image and asset optimization
Adaptive delivery gives an immediate win: conversion to AVIF/WebP, responsive sizes via srcset/sizes, device-aware rendering for Retina and low-end devices. On the edge/CDN images are transcoded on the fly, and formats are selected based on the Accept header. This saves tens of kilobytes on a product card and speeds up LCP.
We shorten the critical rendering path: add preconnect to payment domains (PrivatBank/Monobank), delivery services (Nova Poshta), marketplaces (Rozetka, Prom.ua), use preload for fonts and the hero image, dns-prefetch for third-party resources. Responsive critical CSS is collected separately: only above-the-fold styles are inlined, the rest is loaded lazily. For compression we enable brotli at the edge; instead of the deprecated HTTP/2 push we use modern preload.
Practically: in Cloudflare and Fastly we enable image optimization, configure format rules (AVIF when supported, otherwise WebP/JPEG), limit the maximum width, add smart cropping. On Vercel: Image Optimization with automatic generation of different sizes and preview caching.
Migration to edge rendering: plan
Step-by-step migration:
- Local prototype on an edge runtime, capture metrics.
- Canary deploy to 5–10% of traffic with feature flags at the edge level.
- Blue/green release and gradual traffic sharing between origin and edge.
- Coordinate cache TTL and fallback to origin in case of degradation.
- SEO validation: correct bot rendering, sitemaps, hreflang, canonical tags.
Security and edge code compliance
Security is built on runtime isolation and sandboxing: the edge runtime (V8, Deno, WASM) runs code in an isolated environment. We enable a WAF at the edge, rate limiting and DDoS filtering to protect both POPs and the origin. Secrets are stored in the provider’s KMS, and access is granted on a least-privilege basis.
We organize a CI/CD pipeline for edge functions with mandatory review, secrets in a vault, automated testing, and blue/green and canary deployment scenarios. In contracts with providers we analyze SLA/SLO and stipulate procedural guarantees. To reduce the risk of vendor lock-in, we design a portable layer and allow a multi-cloud edge strategy.
Transition to the edge: monitoring and tests
We define metrics and target SLOs: TTFB p95/p99, FCP/LCP by device/geo, rendering error rate, cost per render, cache hit ratio, invalidation frequency. For business metrics we track conversion uplift, revenue per visit, reduction in bounce rate and time to first interaction.
We instrument observability: OpenTelemetry for distributed tracing, centralized logs/traces/metrics, profilers for server-side rendering on the edge. This provides visibility down to the level of an individual POP and a specific route. We run load testing with emulation of geos and networks, A/B testing on the edge is integrated with feature flags to see the contribution of edge rendering to real KPIs.
We evaluate the effect analytically: we calculate the incremental margin from acceleration, correlate it with traffic sources (advertising, SEO, mailings). In a pharma use case, moving to latency-aware SSR on the edge gave +14% to submitted requests and −11% to CPA.
ROI when switching to edge rendering
Costs consist of cost per request/render, traffic charges and logs. We reduce CDN costs with active edge rendering by:
- increasing cache hit ratio,
- precise cache key design and invalidation,
- compression (brotli) and image optimization at the edge,
- log aggregation and sampling of traces.
For executives we create a KPI checklist: target TTFB p95 < 200 ms for Ukraine and neighboring regions, LCP < 2.5 s on mobile, cache hit ratio > 85% on public pages, reduction in mobile bounce rate by at least 10%.
Choosing a provider without vendor lock-in
Selection criteria: density of PoPs in target regions, support for runtimes (V8/Deno/WASM), richness of integrations (image optimization, WAF, bot protection), ease of observability, SLA/SLO. In pricing models it’s important to look at cost per render, ingress/egress, cost of function invocations and log storage.
For a portable solution we build an abstraction layer: a unified interface to the edge cache, adapters for Cloudflare Workers, Fastly Compute and Vercel Edge, a compatible format for logs and traces. In CI/CD: parallel pipelines and smoke tests on an alternative provider. Such a multi-cloud edge approach in the BUSINESS SITE practice eased migrations and gave negotiating leverage on price.
Edge rendering: TTFB and conversion uplift
- E-commerce (home goods). Pain point: TTFB 600–800 ms, LCP ~3.7 s, high bounce from Google Ads. Solution: SSG + ISR for category pages, SSR at the edge for product pages; aggressive edge cache, image optimization (AVIF/WebP), stale-while-revalidate, fallback to origin. Result: TTFB p95 140 ms, LCP 2.1 s, +12.8% conversion uplift, payback in 3.5 months. Lesson: proper cache key design by currency/language gave +9 percentage points to hit ratio.
- News portal. Pain point: traffic spikes, ‘storms’ on the origin during breaking news. Solution: streaming SSR at the edge, geo-routing, origin shield, pre-warming the homepage and sections, responsive critical CSS. Result: FCP 0.9–1.2 s on 4G, steady TTFB 90–120 ms during peaks, 18% increase in indexed pages and time on site. Lesson: scheduled predictive warming before prime time reduces cold start to statistical noise.
- SaaS (B2B tool). Pain point: slow dashboard loading, complaints from the EU and US. Solution: edge SSR only for the shell, islands architecture for widgets, partial hydration, device-aware rendering, A/B testing at the edge. Result: time-to-interactive down 35%, NPS +7 percentage points, churn −4%. Lesson: a hybrid SSR + islands approach minimizes rendering waterfalls without complicating the backend.
Checklist for implementing edge rendering
Strategy: conduct an audit, record TTFB/FCP/LCP baseline, identify revenue-driving pages. Choose a pattern (SSR/SSG/ISR) based on content dynamics and rendering budget.
CDN/edge configuration: cache-control, stale-while-revalidate, origin shield, proper cache key design, resource versioning and cache busting. Configure image pipeline (AVIF/WebP), responsive critical CSS, preconnect/preload/dns-prefetch.
Security: WAF at the edge, rate limiting, DDoS protection, sandboxed runtime, secrets via KMS, privacy by design and data residency for personal data.
CI/CD: feature flags, blue/green and canary, automated tests, fallback to origin, rollback procedures, version control. Pre-warming key routes.
Testing and monitoring: load testing with geo-emulation, A/B at the edge, observability (logs, traces, metrics), SLO/SLA targets. Business metrics: conversion uplift, revenue per visit, bounce reduction.
Team readiness: frontend is proficient in hydration strategies and islands architecture, backend understands invalidation and consistency practices, DevOps provides a multi-cloud edge strategy and observability.
Frequently Asked Questions
A: Quick wins, reduced TTFB by 3–5x thanks to POPs and cache, improved FCP/LCP due to streaming and image optimization. Look at p95 TTFB, mobile LCP, cache hit ratio, and compare conversions in A/B breakdowns.
A: Classical SSR runs on the origin, edge SSR runs on POPs, closer to the user; SSG generates HTML ahead of time. Edge SSR wins on dynamism and personalization, SSG on cost and predictability. ISR combines approaches: SSG speed + updatability.
A: Use short TTLs for sensitive parts, stale-while-revalidate for speed, event-based invalidation and cache versioning. Designing keys by currency/language/region preserves accuracy without excessive cache misses.
A: The process fits into stages: prototype → canary → blue/green → ramping traffic. Feature flags and fallback to origin provide a controlled transition, and aligned TTLs even out cache behavior.
A: Consider the POP network, runtime (V8/Deno/WASM), observability, SLA and pricing model. To minimize lock-in build an abstraction layer and prepare CI/CD for multiple providers (Cloudflare Workers, Fastly Compute, Vercel Edge).










