{
    "name": "Image Compression Savings Calculator",
    "url": "https://calculators.geekmidst.com/calculators/image-compression-savings-calculator",
    "markdown": "https://calculators.geekmidst.com/calculators/image-compression-savings-calculator.md",
    "category": "Software, cloud & AI",
    "description": "See how much bandwidth, money and load time compressing an image saves, from the original and compressed sizes and how often the image is loaded.",
    "summary": "Every byte you remove from an image is saved on every load. Multiply the saving per image by monthly loads to get the transfer saved, then price it.",
    "also_called": [
        "Image optimisation savings calculator"
    ],
    "applies_to": "Worldwide",
    "last_updated": "2026-10-29",
    "computation": "Results are computed in the visitor’s browser on the HTML page. This API describes the calculator; it does not compute results.",
    "inputs": [
        {
            "name": "size_unit",
            "label": "File sizes in",
            "type": "segmented",
            "default": "kB",
            "options": {
                "kB": "kB (1,000 bytes)",
                "KiB": "KiB (1,024 bytes)"
            }
        },
        {
            "name": "original",
            "label": "Original size",
            "type": "number",
            "default": "500"
        },
        {
            "name": "compressed",
            "label": "Compressed size",
            "type": "number",
            "default": "150"
        },
        {
            "name": "views",
            "label": "Image loads per month",
            "type": "number",
            "default": "1000000"
        },
        {
            "name": "egress_price",
            "label": "Bandwidth price per GB",
            "type": "number",
            "default": "0.08",
            "optional": true
        },
        {
            "name": "connection_mbps",
            "label": "Visitor connection speed",
            "type": "number",
            "default": "10",
            "unit": "Mbps",
            "optional": true
        },
        {
            "name": "currency",
            "label": "Currency",
            "type": "currency",
            "default": "USD"
        }
    ],
    "outputs": [
        {
            "key": "transfer_saved_gb",
            "label": "Transfer saved per month",
            "format": "number"
        },
        {
            "key": "transfer_saved_gib",
            "label": "Transfer saved per month",
            "format": "number"
        },
        {
            "key": "bytes_saved",
            "label": "Bytes saved per load",
            "format": "integer"
        },
        {
            "key": "reduction",
            "label": "Size reduction",
            "format": "percent"
        },
        {
            "key": "cost_saved",
            "label": "Bandwidth cost saved per month",
            "format": "currency"
        },
        {
            "key": "ms_saved",
            "label": "Download time saved per load",
            "format": "number"
        }
    ],
    "formula": {
        "text": "Bytes saved = (Original − Compressed) × 1,000 (or 1,024);  GB saved = Bytes saved × Loads ÷ 10⁹;  Time saved = Bytes saved × 8 ÷ (Mbps × 10⁶)",
        "variables": {
            "Loads": "downloads of the image per month",
            "Mbps": "connection speed in megabits per second (8 bits per byte)"
        }
    },
    "worked_example": {
        "inputs": {
            "size_unit": "kB",
            "original": "500",
            "compressed": "150",
            "views": "1000000",
            "egress_price": "0.08",
            "connection_mbps": "10",
            "currency": "USD"
        },
        "steps": [
            "Saved per load: 500 − 150 = 350 kB = 350,000 bytes (70%).",
            "Per month: 350,000 × 1,000,000 = 3.5 × 10¹¹ bytes = 350 GB; × 0.08 = 28.",
            "Time: 350,000 × 8 = 2.8 million bits ÷ 10 Mbps = 0.28 s = 280 ms."
        ],
        "result": "Cutting a 500 kB image to 150 kB saves 350 GB a month at a million loads, and about 280 ms per load on a 10 Mbps connection."
    },
    "interpretation": "Bandwidth savings matter at scale, but the load-time saving usually matters more: smaller hero images improve Largest Contentful Paint, which affects user experience and search visibility.",
    "assumptions": [
        "Every load transfers the whole file.",
        "Time saved assumes the connection is the bottleneck, ignoring latency."
    ],
    "limitations": [
        "HTTP compression, caching and responsive image sizes mean real savings vary by visitor."
    ],
    "rules": null,
    "faqs": [
        {
            "question": "Why are bits and bytes mixed here?",
            "answer": "File sizes are in bytes, but connection speeds are quoted in bits per second. One byte is 8 bits, so a 10 Mbps line moves 1.25 MB per second at best."
        },
        {
            "question": "Which formats compress best?",
            "answer": "For photos, AVIF and WebP are usually much smaller than JPEG at similar visual quality; measure with your own images."
        }
    ],
    "sources": [],
    "related": [
        {
            "name": "CDN Bandwidth Cost Calculator",
            "url": "https://calculators.geekmidst.com/calculators/cdn-bandwidth-cost-calculator"
        },
        {
            "name": "Data Transfer Time Calculator",
            "url": "https://calculators.geekmidst.com/calculators/data-transfer-time-calculator"
        },
        {
            "name": "Percentage Change Calculator",
            "url": "https://calculators.geekmidst.com/calculators/percentage-change-calculator"
        }
    ],
    "disclaimer": null,
    "publisher": "GM¹X CalcVerse"
}