Home
BandwidthGuard Logo

BandwidthGuard — Find API Payload Bloat

Runs 100% in your browser. Your payload never leaves your device.

Find What's Making Your API Payloads Too Big

Paste a JSON response, upload a HAR file, or analyze a request. See where the bytes are going, what you can optimize, and how much bandwidth you could save.

Payload Type:
Samples:

Formatting notice: Pretty-printed indentation adds +904 B vs minified (2.13 KB).

Bandwidth Score
52/ 100
Moderate Payload Bloat

Evaluates whitespace, redundant nulls, verbose keys, float precision, and array shapes.

Key Opportunity
~54.1%Potentially Removable(~1.63 KB)
Estimated · Review recommended

Based on detected payload patterns such as excess whitespace, default/null fields, verbose keys, and unconstrained float precision.

Original Payload3.01 KB
Minified JSON2.13 KB
Optimized Target1.38 KB
Detected Factors:Whitespace904 BNull fields312 BDefault values144 BVerbose keys306 B

Where Are Your Bytes Going?

Top JSON fields and nested paths consuming the most bandwidth

results70%results[*].preferences17%results[*].created_at10%results[*].updated_at10%results[*].email_address9%
results
70%
Count: ×12.10 KB
results[*].preferences
17%
Count: ×8528 B
results[*].created_at
10%
Count: ×8312 B
results[*].updated_at
10%
Count: ×8312 B
results[*].email_address
9%
Count: ×8280 B
results[*].full_name
7%
Count: ×8216 B

What Can I Fix?

Prioritized optimization actions: safe reductions vs contract revisions

Safe Optimizations

Zero contract risk — preserve exact client compatibility

Minify JSON

904 B · 29.3%

Strip indentation and newlines. Same data — this is always applied when you copy.

Always Safe

Review With Frontend / Backend Team

Remove redundant nulls, defaults, and precision if clients accept omission

Keep PII off the list payload

440 B · 14.3%

Looks like personal data: email_address, last_login_ip. Prefer a detail endpoint instead of repeating them on every row.

Notice: List screens rarely need email, IP, or phone. Only drop them if no client reads those keys.

Remove null fields

312 B · 10.1%

16 null values can be omitted entirely.

Notice: Clients may still read this key. Only drop it if the UI does not need to tell null apart from a missing field.

Use Unix timestamps instead of ISO 8601

166 B · 5.4%

16 ISO date strings shrink by roughly 40%.

Notice: Only convert if clients already parse numbers. Date pickers and OpenAPI schemas often require ISO strings.

Omit false / 0 / empty-string defaults

144 B · 4.7%

8 default values can be left off if missing means the same thing.

Notice: Clients often treat a missing key as false/0/"". Only drop defaults if the UI already does that.

API Contract Changes

Alters payload schema, key names, or serialization format (requires client updates)

Convert repeated objects to columnar JSON

714 B · 23.2%

results has 8 uniform items. Converting to {columns, rows} eliminates key repetition.

Notice: Columnar encoding replaces object keys on every row with a single header row and rows array. Client deserializers must support this.

Don't repeat the same nested object on every row

528 B · 17.1%

preferences ×8 is identical on each item. Lift it to a default or omit it on the list.

Notice: If every row has the same nested object, send it once or omit it on the list. Confirm the client can live without it per row.

This list is already paged — slim each row

308 B · 10.0%

Showing 8 of 128. Don't add more per-row fields; use a detail route for the rest.

Server/Serializer Change

Shorten repeated key names

272 B · 8.8%

email_address → email, last_login_ip → ip, preferences → prefer. Rename in the serializer — not applied automatically.

Server/Serializer Change

Shorten repeated keys

247 B · 8.0%

The same object shape repeats many times; key names dominate the payload. Rename in code — not applied automatically.

Server/Serializer Change

Approved rewrite: 0 B vs 3.01 KB original (Minify only · 0/6 contract changes ticked).

Gzip/Brotli applied by server/CDN

What Does This Payload Cost at Scale?

Simulate real-world traffic volume to project monthly egress bandwidth demands

Monthly Transfer Formula

50,000users×20req/day×3.01 KB86.11 GB/ month
50,000
10010,00010M
20
150100

Architecture Scenarios

Current Transfer86.11 GB3.01 KB / req
Optimized Transfer60.27 GB~2.11 KB / req
Potential Reduction25.84 GBsaved / month
Total Requests: 30.00MEstimated Peak RPS: 23.1 req/s

Estimated Monthly Infrastructure Transfer Cost

Estimates for 86.11 GB monthly egress across major cloud providers

⚠️ Infrastructure Cost Disclaimer: Estimates are based on published public bandwidth transfer prices. Actual billing depends on multi-region routing, ingress/egress direction, CDN caching hit ratios, volume discounts, and commitment tiers.

⇄ Swipe horizontally to compare all providers & costs
ProviderPlanIncludedEgress costRequest costTotal monthlyPer 1M requests
Edge & CDN
Cloudflare CDNCloudflare does not bill for CDN cache egress globally on any plan tier. Workers, R2, and Images are separate meters.Best Value
CDN (Free / Pro / Biz zones)Unmetered CDN egress$0.00

$0.00 / GB

$0.00

$0.00

$0.00$0.00
Azure CDNStandard Microsoft CDN Zone 1 (NA/EU) list egress is $0.081/GB; Zone 2 (APAC/Japan) is $0.117/GB; Zone 3 (LATAM) is $0.160/GB.
Microsoft StandardNone$6.97

$0.081 / GB

$0.00

included

$6.97$0.23
GCP Cloud CDNNorth America/Europe cache egress: $0.08/GiB; Asia-Pacific: $0.12/GiB; South America: $0.15/GiB.
Cache egressNone$6.89

$0.080 / GB

$22.50

$0.0075 / 10k

$29.39$0.98
AWS CloudFrontAlways-free 1 TB/month globally. Baseline US/EU is $0.085/GB; APAC (India/Japan/Singapore) averages $0.120–$0.140/GB; LATAM is $0.110/GB.
Pay-as-you-go1 TB / month (Always Free)$0.00

$0.085 / GB

$30.00

$0.0100 / 10k

$30.00$1.00
FastlyNorth America & Europe is $0.12/GB; Asia/ANZ is $0.19/GB; South America is $0.19/GB. Requests are $0.0075/10k.
Pay-as-you-go$50 free trial credit$10.33

$0.120 / GB

$22.50

$0.0075 / 10k

$32.83$1.09
Frontend & Serverless Cloud
VercelPro includes 1 TB of Fast Data Transfer per month globally; overage is flat $0.15/GB worldwide across edge regions.Best Value
Pro1 TB Fast Data Transfer$0.00

$0.150 / GB

$0.00

not modeled

$0.00$0.00
NetlifyPro includes 1 TB bandwidth/month globally. Overage is billed at flat $0.20/GB standard PAYG worldwide.
Pro ($19/seat)1 TB Bandwidth included$0.00

$0.200 / GB

$0.00

included

$0.00$0.00
Azure Static Web AppsStandard plan includes 100 GB bandwidth/month; overage is billed at Azure data transfer rates ($0.087/GB Zone 1; $0.12/GB Zone 2; $0.18/GB Zone 3).
Standard100 GB included / month$0.00

$0.087 / GB

$0.00

included

$0.00$0.00
SupabasePro includes 250 GB database and API egress per month globally; overage is flat $0.09/GB across all project regions.
Pro ($25/mo)250 GB unified egress$0.00

$0.090 / GB

$0.00

included

$0.00$0.00
RailwayOutbound internet egress is billed at flat $0.10/GB globally across US, EU, and APAC clusters.
Hobby / Pro$5 free credit (~50 GB)$3.61

$0.100 / GB

$0.00

included

$3.61$0.12
RenderPro workspaces include 25 GB outbound per month; overage is flat $0.15/GB across US, EU, and Singapore regions.
Pro workspace25 GB included$9.17

$0.150 / GB

$0.00

included

$9.17$0.31
Backend Origin & VPS
AWS EC2 / BackendAWS provides 100 GB/month free internet egress. Baseline US East/EU is $0.090/GB; APAC (Tokyo/Singapore/India) is $0.114–$0.120/GB; São Paulo (LATAM) is $0.150/GB.Best Value
Internet Egress100 GB / month (Always Free)$0.00

$0.090 / GB

$0.00

included

$0.00$0.00
Azure VMs / BackendAzure provides 100 GB/month free egress. Zone 1 (US/EU) is $0.087/GB; Zone 2 (APAC/Australia/India) is $0.120/GB; Zone 3 (Brazil/LATAM) is $0.181/GB.
Internet Egress100 GB / month (Always Free)$0.00

$0.087 / GB

$0.00

included

$0.00$0.00
GCP Compute / Cloud RunGoogle Cloud provides 100 GB/month free egress. NA/Europe is $0.120/GB; APAC is $0.120–$0.190/GB; São Paulo (LATAM) is $0.150/GB.
Internet Egress100 GB / month (Always Free)$0.00

$0.120 / GB

$0.00

included

$0.00$0.00
DigitalOceanBasic Droplets include 1 TB (1,000 GB) of outbound transfer per month globally; overage is flat $0.01/GB ($10/TB) in all data centers worldwide (NYC, SFO, AMS, FRA, SGP, BLR, SYD).
Droplets ($6/mo)1,000 GB included$0.00

$0.010 / GB ($10/TB)

$0.00

included

$0.00$0.00
Hetzner CloudEU CX-class clouds include 20 TB outbound data; overage is €1/TB (~$0.001/GB). In US and Singapore regions, 1 TB is included.
Cloud CX20 TB included (EU) / 1 TB (US)$0.00

$0.001 / GB (€1/TB)

$0.00

included

$0.00$0.00
Fly.ioNorth America/Europe outbound egress is $0.02/GB; Asia-Pacific is $0.04/GB; South America/India is $0.12/GB.
Pay as you goNone (new orgs)$1.72

$0.020 / GB

$0.00

included

$1.72$0.06

Estimates, not invoices. List prices verified 2026-08-23 for US & Europe. Excludes compute, storage, seats, and enterprise discounts. CDN, serverless, and origin hosts are grouped separately as their architectures and pricing structures differ.

Compression & Serialization Benchmark

Live browser benchmarks distinguishing measured byte sizes from mathematical estimates

Raw JSON

Measured

Uncompressed original payload received or generated

3.01 KB

3,082 bytes on wire

Minified JSON

Measured

Whitespace stripped, valid standard JSON

2.13 KB29%

2,178 bytes on wire

Gzip (Level 6)

Calculating…

Universal HTTP/1.1 & HTTP/2 compression supported by all clients

Calculating…

Computing stream size

Brotli (est.)

Calculating…

Modern web standard with higher compression ratio for text

Calculating…

Computing stream size

Zstandard (est.)

Calculating…

Modern high-performance compression; ideal when you control both client & server

Calculating…

Computing stream size

MessagePack

Calculating…

Compact binary JSON equivalent eliminating string parsing overhead

Calculating…

Computing stream size

CBOR

Calculating…

Concise Binary Object Representation standard (RFC 8949)

Calculating…

Computing stream size

What Happens on Real Networks?

Estimated download times for 3.01 KB on the wire, including TCP slow-start round trips

Slow 3G

Emerging markets / weak mobile signal (400 Kbps, 400ms RTT)

462 ms1 RTT
Transfer: 62msRTT: 400ms

Fast 3G

Typical 3G connection (1.6 Mbps, 150ms RTT)

165 ms1 RTT
Transfer: 15msRTT: 150ms

4G / LTE

Standard mobile LTE (12 Mbps, 50ms RTT)

52 ms1 RTT
Transfer: 2msRTT: 50ms

5G / Fiber

High-speed broadband or 5G (100 Mbps, 15ms RTT)

15 ms1 RTT
Transfer: 0msRTT: 15ms

Satellite / Starlink

Satellite link with propagation delay (25 Mbps, 220ms RTT)

221 ms1 RTT
Transfer: 1msRTT: 220ms