{"id":10003,"date":"2025-10-11T22:17:26","date_gmt":"2025-10-12T03:17:26","guid":{"rendered":"https:\/\/infiniteuploads.com\/?page_id=10003"},"modified":"2025-11-26T23:18:19","modified_gmt":"2025-11-27T05:18:19","slug":"pricing-calculator","status":"publish","type":"page","link":"https:\/\/infiniteuploads.com\/pricing-calculator\/","title":{"rendered":"Pricing Calculator"},"content":{"rendered":"<!DOCTYPE html PUBLIC \"-\/\/W3C\/\/DTD HTML 4.0 Transitional\/\/EN\" \"http:\/\/www.w3.org\/TR\/REC-html40\/loose.dtd\">\n<html><body><div class=\"et_pb_section_0 et_pb_section et_section_regular et_block_section\"><\/div><div class=\"et_pb_section_1 et_pb_section et_pb_fullwidth_section et_section_regular et_block_section\"><div class=\"et_pb_fullwidth_code_0 et_pb_fullwidth_code et_pb_module\"><div class=\"et_pb_code_inner\">\t\n\t<style>\n\t.iu-pricing-calc {\n\t\tfont-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n\t\tbackground: transparent;\n\t\tpadding: 20px;\n\t\tborder-radius: 20px;\n\t\tmargin: 20px 0;\n\t\tmax-width: 100%; width: 100%;\t}\n\n\t.iu-pricing-calc .iu-container {\n\t\tbackground: white;\n\t\tborder-radius: 20px;\n\t\tbox-shadow: 0 20px 40px rgba(0,0,0,0.1);\n\t\toverflow: hidden;\n\t\tmax-width: 100%; width: 100%;\t}\n\n\t.iu-pricing-calc .iu-header {\n\t\tbackground: linear-gradient(135deg, #26a9e0 0%, #1e8bb8 100%);\n\t\tcolor: white;\n\t\tpadding: 30px;\n\t\ttext-align: center;\n\t}\n\n\t.iu-pricing-calc .iu-header h1 {\n\t\tfont-size: 2.5rem !important;\n\t\tmargin-bottom: 10px !important;\n\t\tfont-weight: 700 !important;\n\t\tcolor: white !important;\n\t}\n\n\t.iu-pricing-calc .iu-header p {\n\t\tfont-size: 1.1rem !important;\n\t\topacity: 0.9;\n\t\tmargin-bottom: 0 !important;\n\t}\n\n\t.iu-pricing-calc .iu-main {\n\t\tpadding: 40px;\n\t}\n\n\t.iu-pricing-calc .iu-input-group {\n\t\tmargin-bottom: 30px;\n\t}\n\n\t.iu-pricing-calc .iu-input-row {\n\t\tdisplay: grid;\n\t\tgrid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n\t\tgap: 20px;\n\t\tmargin-bottom: 20px;\n\t}\n\n\t.iu-pricing-calc .iu-input-field {\n\t\tposition: relative;\n\t}\n\n\t.iu-pricing-calc .iu-input-field label {\n\t\tdisplay: block;\n\t\tmargin-bottom: 10px !important;\n\t\tfont-weight: 600 !important;\n\t\tcolor: #333 !important;\n\t\tfont-size: 1.1rem !important;\n\t}\n\n\t.iu-pricing-calc .iu-input-field input,\n\t.iu-pricing-calc .iu-input-field select {\n\t\twidth: 100% !important;\n\t\tpadding: 15px !important;\n\t\tborder: 2px solid #e1e5e9 !important;\n\t\tborder-radius: 10px !important;\n\t\tfont-size: 1rem !important;\n\t\ttransition: all 0.3s ease !important;\n\t\tbackground: white !important;\n\t\tbox-sizing: border-box !important;\n\t}\n\n\t.iu-pricing-calc .iu-input-field input:focus,\n\t.iu-pricing-calc .iu-input-field select:focus {\n\t\toutline: none !important;\n\t\tborder-color: #26a9e0 !important;\n\t\tbox-shadow: 0 0 0 3px rgba(38, 169, 224, 0.1) !important;\n\t}\n\n\t.iu-pricing-calc .iu-unit {\n\t\tposition: absolute;\n\t\tright: 15px;\n\t\ttop: 50%;\n\t\ttransform: translateY(-10%);\n\t\tcolor: #666;\n\t\tfont-weight: 500;\n\t\tpointer-events: none;\n\t}\n\n\t.iu-pricing-calc .iu-checkbox-row {\n\t\tdisplay: flex;\n\t\tgap: 30px;\n\t\tflex-wrap: wrap;\n\t\tmargin-top: 15px;\n\t}\n\n\t.iu-pricing-calc .iu-checkbox-label {\n\t\tdisplay: flex !important;\n\t\talign-items: center !important;\n\t\tfont-size: 1rem !important;\n\t\tcursor: pointer !important;\n\t\tmargin-bottom: 0 !important;\n\t}\n\n\t.iu-pricing-calc .iu-checkbox-label input[type=\"checkbox\"] {\n\t\tmargin-right: 8px !important;\n\t\ttransform: scale(1.2) !important;\n\t\twidth: auto !important;\n\t\tpadding: 0 !important;\n\t}\n\n\t.iu-pricing-calc .iu-results {\n\t\tdisplay: grid;\n\t\tgrid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n\t\tgap: 30px;\n\t\tmargin-top: 40px;\n\t}\n\n\t.iu-pricing-calc .iu-card {\n\t\tbackground: #f8f9fa;\n\t\tborder-radius: 15px;\n\t\tpadding: 25px;\n\t\tborder: 2px solid transparent;\n\t\ttransition: all 0.3s ease;\n\t\tposition: relative;\n\t\toverflow: visible;\n\t}\n\n\t.iu-pricing-calc .iu-card:hover {\n\t\ttransform: translateY(-5px);\n\t\tbox-shadow: 0 15px 30px rgba(0,0,0,0.1);\n\t}\n\n\t.iu-pricing-calc .iu-card.iu-best-value {\n\t\tborder-color: #26a9e0;\n\t\tbackground: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);\n\t}\n\n\t.iu-pricing-calc .iu-card.iu-best-value::before {\n\t\tcontent: attr(data-badge-text);\n\t\tposition: absolute;\n\t\ttop: 20px;\n\t\tright: -35px;\n\t\tbackground: #26a9e0;\n\t\tcolor: white;\n\t\tpadding: 5px 45px;\n\t\tfont-size: 0.75rem;\n\t\tfont-weight: bold;\n\t\ttransform: rotate(45deg);\n\t\tbox-shadow: 0 2px 5px rgba(0,0,0,0.2);\n\t}\n\n\t.iu-pricing-calc .iu-card-header h4 {\n\t\tfont-size: 1.3rem !important;\n\t\tfont-weight: 700 !important;\n\t\tcolor: #333 !important;\n\t\tmargin-bottom: 15px !important;\n\t}\n\n\t.iu-pricing-calc .iu-price-display {\n\t\ttext-align: center;\n\t\tmargin: 20px 0;\n\t}\n\n\t.iu-pricing-calc .iu-price-amount {\n\t\tfont-size: 2.5rem !important;\n\t\tfont-weight: 800 !important;\n\t\tcolor: #333 !important;\n\t\tmargin-bottom: 5px !important;\n\t}\n\n\t.iu-pricing-calc .iu-card.iu-infinite .iu-price-amount {\n\t\tcolor: #26a9e0 !important;\n\t}\n\n\t.iu-pricing-calc .iu-price-period {\n\t\tcolor: #666 !important;\n\t\tfont-size: 0.9rem !important;\n\t}\n\n\t.iu-pricing-calc .iu-badge {\n\t\tbackground: linear-gradient(135deg, #ff6b6b 0%, #ee5a52 100%);\n\t\tcolor: white !important;\n\t\tpadding: 8px 16px;\n\t\tborder-radius: 20px;\n\t\tfont-weight: 600 !important;\n\t\tfont-size: 0.9rem !important;\n\t\tmargin-top: 10px;\n\t\tdisplay: inline-block;\n\t}\n\n\t.iu-pricing-calc .iu-badge.iu-best {\n\t\tbackground: linear-gradient(135deg, #26a9e0 0%, #1e8bb8 100%);\n\t}\n\n\t.iu-pricing-calc .iu-features {\n\t\tmargin-top: 20px;\n\t}\n\n\t.iu-pricing-calc .iu-feature {\n\t\tmargin-bottom: 8px;\n\t\tfont-size: 0.9rem;\n\t}\n\n\t.iu-pricing-calc .iu-check {\n\t\tcolor: #26a9e0;\n\t\tmargin-right: 10px;\n\t\tfont-weight: bold;\n\t}\n\n\t.iu-pricing-calc .iu-breakdown {\n\t\tmargin-top: 20px;\n\t\tfont-size: 0.9rem;\n\t}\n\n\t.iu-pricing-calc .iu-breakdown-item {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tmargin-bottom: 8px;\n\t}\n\n\t.iu-pricing-calc .iu-breakdown-label {\n\t\tcolor: #666;\n\t}\n\n\t.iu-pricing-calc .iu-breakdown-value {\n\t\tfont-weight: 600;\n\t\tcolor: #333;\n\t}\n\n\t.iu-pricing-calc .iu-breakdown-total {\n\t\tborder-top: 2px solid #e1e5e9;\n\t\tpadding-top: 10px;\n\t\tmargin-top: 10px;\n\t\tfont-weight: 700;\n\t}\n\n\t.iu-pricing-calc .iu-summary {\n\t\tbackground: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);\n\t\tpadding: 30px;\n\t\tmargin-top: 40px;\n\t\tborder-radius: 15px;\n\t}\n\n\t.iu-pricing-calc .iu-summary h3 {\n\t\tfont-size: 1.5rem !important;\n\t\tfont-weight: 700 !important;\n\t\tcolor: #333 !important;\n\t\tmargin-bottom: 20px !important;\n\t\ttext-align: center !important;\n\t}\n\n\t.iu-pricing-calc .iu-stats {\n\t\tdisplay: grid;\n\t\tgrid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n\t\tgap: 20px;\n\t}\n\n\t.iu-pricing-calc .iu-stat-card {\n\t\tbackground: white;\n\t\tpadding: 20px;\n\t\tborder-radius: 12px;\n\t\ttext-align: center;\n\t\tborder: 1px solid #e8eaed;\n\t\tbox-shadow: 0 2px 8px rgba(0,0,0,0.06);\n\t\ttransition: all 0.2s ease;\n\t}\n\n\t.iu-pricing-calc .iu-stat-card:hover {\n\t\tborder-color: #d1d5da;\n\t\tbox-shadow: 0 4px 12px rgba(0,0,0,0.1);\n\t}\n\n\t.iu-pricing-calc .iu-stat-value {\n\t\tfont-size: 2rem !important;\n\t\tfont-weight: 800 !important;\n\t\tcolor: #26a9e0 !important;\n\t\tmargin-bottom: 5px !important;\n\t}\n\n\t.iu-pricing-calc .iu-stat-label {\n\t\tcolor: #666 !important;\n\t\tfont-size: 0.9rem !important;\n\t}\n\n\t.iu-pricing-calc .iu-footer {\n\t\tbackground: #f8f9fa;\n\t\tpadding: 30px 40px;\n\t\tborder-top: 1px solid #e1e5e9;\n\t\ttext-align: center;\n\t\tcolor: #666;\n\t\tfont-size: 0.9rem;\n\t\tline-height: 1.6;\n\t}\n\n\t\t\/* Fullwidth specific styles *\/\n\t.iu-pricing-calc {\n\t\tmargin-left: calc(50% - 50vw) !important;\n\t\tmargin-right: calc(50% - 50vw) !important;\n\t\twidth: 100vw !important;\n\t\tmax-width: 100vw !important;\n\t\tposition: relative;\n\t\tleft: 50%;\n\t\tright: 50%;\n\t\ttransform: translateX(-50%);\n\t}\n\t\n\t.iu-pricing-calc .iu-container {\n\t\tborder-radius: 0 !important;\n\t}\n\t\n\t@media (max-width: 767px) {\n\t\t.iu-pricing-calc .iu-results {\n\t\t\tgrid-template-columns: 1fr;\n\t\t}\n\t\t\n\t\t.iu-pricing-calc .iu-input-row {\n\t\t\tgrid-template-columns: 1fr;\n\t\t}\n\t\t\n\t\t.iu-pricing-calc .iu-checkbox-row {\n\t\t\tflex-direction: column;\n\t\t\tgap: 15px;\n\t\t}\n\t}\n\t<\/style>\n\n\t<div class=\"iu-pricing-calc\">\n\t\t<div class=\"iu-container\">\n\t\t\t\n\t\t\t\t\t\t<header class=\"iu-header\">\n\t\t\t\t<h1>Infinite Uploads Pricing Calculator<\/h1>\n\t\t\t\t<p>Compare WordPress media offload costs and see how much you can save<\/p>\n\t\t\t<\/header>\n\t\t\t\n\t\t\t<main class=\"iu-main\">\n\t\t\t\t<section class=\"iu-input-group\">\n\t\t\t\t\t<h2 style=\"font-size: 1.1rem; font-weight: 600; color: #333; margin-bottom: 20px;\">Configure Your Usage<\/h2>\n\t\t\t\t\t\n\t\t\t\t\t<div class=\"iu-input-row\">\n\t\t\t\t\t\t<div class=\"iu-input-field\">\n\t\t\t\t\t\t\t<label for=\"iu-storage-6a41321ce37dd\">Storage Required<\/label>\n\t\t\t\t\t\t\t<input type=\"number\" class=\"iu-storage\" value=\"50\" min=\"1\" max=\"10000\">\n\t\t\t\t\t\t\t<span class=\"iu-unit\">GB<\/span>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t<div class=\"iu-input-field\">\n\t\t\t\t\t\t\t<label for=\"iu-bandwidth-6a41321ce37df\">Monthly Bandwidth<\/label>\n\t\t\t\t\t\t\t<input type=\"number\" class=\"iu-bandwidth\" value=\"100\" min=\"1\" max=\"50000\">\n\t\t\t\t\t\t\t<span class=\"iu-unit\">GB<\/span>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t<div class=\"iu-input-field\">\n\t\t\t\t\t\t\t<label for=\"iu-sites-6a41321ce37e0\">Number of Sites<\/label>\n\t\t\t\t\t\t\t<select class=\"iu-sites\">\n\t\t\t\t\t\t\t\t<option value=\"1\"  selected='selected'>1 Site<\/option>\n\t\t\t\t\t\t\t\t<option value=\"3\" >3 Sites<\/option>\n\t\t\t\t\t\t\t\t<option value=\"10\" >10 Sites<\/option>\n\t\t\t\t\t\t\t\t<option value=\"25\" >25 Sites<\/option>\n\t\t\t\t\t\t\t\t<option value=\"unlimited\">Unlimited Sites<\/option>\n\t\t\t\t\t\t\t<\/select>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\n\t\t\t\t\t<div class=\"iu-checkbox-row\">\n\t\t\t\t\t\t<label class=\"iu-checkbox-label\">\n\t\t\t\t\t\t\t<input type=\"checkbox\" class=\"iu-videos\">\n\t\t\t\t\t\t\tHeavy video usage\n\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t<label class=\"iu-checkbox-label\">\n\t\t\t\t\t\t\t<input type=\"checkbox\" class=\"iu-simple\">\n\t\t\t\t\t\t\tI prefer simple solutions\n\t\t\t\t\t\t<\/label>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\n\t\t\t\t<div class=\"iu-results\">\n\t\t\t\t\t<!-- Results populated by JavaScript -->\n\t\t\t\t<\/div>\n\n\t\t\t\t<section class=\"iu-summary\">\n\t\t\t\t\t<h3>Your Savings With Infinite Uploads<\/h3>\n\t\t\t\t\t<p>Compared to WP Offload Media & Media Cloud Pro<\/p>\n\t\t\t\t\t<div class=\"iu-stats\">\n\t\t\t\t\t\t<!-- Stats populated by JavaScript -->\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/section>\n\t\t\t<\/main>\n\t\t\t\n\t\t\t\t\t\t<footer class=\"iu-footer\">\n\t\t\t\t<p style=\"margin-bottom: 15px;\">Compare pricing between <strong>Infinite Uploads<\/strong> and leading WordPress media offload solutions.<\/p>\n\t\t\t\t<p style=\"margin-bottom: 15px; font-size: 0.85rem; color: #888;\">All pricing calculations based on current cloud infrastructure costs as of October 2025.<\/p>\n\t\t\t\t<p style=\"margin: 0; font-size: 0.8rem; color: #999;\">\u00a9 2025 Infinite Uploads. Simplifying WordPress media management.<\/p>\n\t\t\t<\/footer>\n\t\t\t\t\t<\/div>\n\t<\/div>\n\n\t<script>\n\t(function() {\n\t\t'use strict';\n\t\t\n\t\tconst containerClass = 'iu-pricing-calc';\n\t\tconst container = document.querySelector('.' + containerClass);\n\t\tif (!container) return;\n\n\t\t\/\/ Pricing data\n\t\tconst pricing = {\n\t\t\tinfinite: function(storage, bandwidth) {\n\t\t\t\tif (storage <= 50 && bandwidth <= 100) return 19;\n\t\t\t\tif (storage <= 100 && bandwidth <= 200) return 29;\n\t\t\t\tif (storage <= 200 && bandwidth <= 400) return 49;\n\t\t\t\tif (storage <= 400 && bandwidth <= 800) return 79;\n\t\t\t\tif (storage <= 1000 && bandwidth <= 2000) return 149;\n\t\t\t\treturn 189;\n\t\t\t},\n\t\t\t\n\t\t\twpOffloadS3: function(storage, bandwidth) {\n\t\t\t\tconst attachments = pricing.calculateAttachments(storage);\n\t\t\t\tlet annualCost = 199;\n\t\t\t\t\n\t\t\t\tif (attachments <= 20000) annualCost = 199;\n\t\t\t\telse if (attachments <= 40000) annualCost = 249;\n\t\t\t\telse if (attachments <= 100000) annualCost = 349;\n\t\t\t\telse if (attachments <= 500000) annualCost = 799;\n\t\t\t\telse annualCost = 1199;\n\t\t\t\t\n\t\t\t\tconst pluginLicense = annualCost \/ 12;\n\t\t\t\tconst storageCost = storage * 0.023;\n\t\t\t\tconst apiCosts = (attachments \/ 1000) * 0.005 + (attachments \/ 1000) * 0.0004;\n\t\t\t\tconst cdnCosts = bandwidth * 0.09125 + (attachments \/ 10000) * 0.0075;\n\t\t\t\t\n\t\t\t\treturn {\n\t\t\t\t\ttotal: pluginLicense + storageCost + apiCosts + cdnCosts,\n\t\t\t\t\tbreakdown: {\n\t\t\t\t\t\tpluginLicense: pluginLicense,\n\t\t\t\t\t\tstorage: storageCost,\n\t\t\t\t\t\tapi: apiCosts,\n\t\t\t\t\t\tcdn: cdnCosts\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t},\n\t\t\t\n\t\t\tmediaCloudPro: function(storage, bandwidth, sites) {\n\t\t\t\tif (sites === 'unlimited') {\n\t\t\t\t\treturn { notOffered: true };\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tconst attachments = pricing.calculateAttachments(storage);\n\t\t\t\tlet licenseCost = 8.99;\n\t\t\t\tconst siteCount = parseInt(sites);\n\t\t\t\t\n\t\t\t\tif (siteCount >= 25) licenseCost = 54.99;\n\t\t\t\telse if (siteCount >= 10) licenseCost = 39.99;\n\t\t\t\telse if (siteCount >= 3) licenseCost = 15.99;\n\t\t\t\t\n\t\t\t\tconst storageCost = storage * 0.023;\n\t\t\t\tconst apiCosts = (attachments \/ 1000) * 0.005 + (attachments \/ 1000) * 0.0004;\n\t\t\t\tconst cdnCosts = bandwidth * 0.09125 + (attachments \/ 10000) * 0.0075;\n\t\t\t\t\n\t\t\t\treturn {\n\t\t\t\t\ttotal: licenseCost + storageCost + apiCosts + cdnCosts,\n\t\t\t\t\tbreakdown: {\n\t\t\t\t\t\tpluginLicense: licenseCost,\n\t\t\t\t\t\tstorage: storageCost,\n\t\t\t\t\t\tapi: apiCosts,\n\t\t\t\t\t\tcdn: cdnCosts\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t},\n\t\t\t\n\t\t\tcalculateAttachments: function(storage) {\n\t\t\t\tif (storage <= 10) return 20000;\n\t\t\t\tif (storage <= 50) return 100000;\n\t\t\t\tif (storage <= 100) return 200000;\n\t\t\t\tif (storage <= 200) return 400000;\n\t\t\t\tif (storage <= 500) return 500000;\n\t\t\t\treturn Math.round(500000 + ((storage - 500) * 1000));\n\t\t\t}\n\t\t};\n\n\t\tfunction calculate() {\n\t\t\tconst storage = parseInt(container.querySelector('.iu-storage').value) || 50;\n\t\t\tconst bandwidth = parseInt(container.querySelector('.iu-bandwidth').value) || 100;\n\t\t\tconst sites = container.querySelector('.iu-sites').value;\n\t\t\tconst hasVideos = container.querySelector('.iu-videos').checked;\n\t\t\tconst wantsSimple = container.querySelector('.iu-simple').checked;\n\t\t\t\n\t\t\tconst infinitePrice = pricing.infinite(storage, bandwidth);\n\t\t\tconst wpS3 = pricing.wpOffloadS3(storage, bandwidth);\n\t\t\tconst mediaCloud = pricing.mediaCloudPro(storage, bandwidth, sites);\n\t\t\t\n\t\t\t\/\/ Build results array\n\t\t\tconst results = [\n\t\t\t\t{\n\t\t\t\t\tname: 'Infinite Uploads',\n\t\t\t\t\tprice: infinitePrice,\n\t\t\t\t\tisInfinite: true,\n\t\t\t\t\tfeatures: [\n\t\t\t\t\t\t'Video Transcoding Included',\n\t\t\t\t\t\t'Storage & CDN Costs Included',\n\t\t\t\t\t\t'No Other Provider Signup',\n\t\t\t\t\t\t'Predictable Pricing',\n\t\t\t\t\t\t'4 Click Setup'\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t];\n\t\t\t\n\t\t\tif (!wpS3.notOffered) {\n\t\t\t\tresults.push({\n\t\t\t\t\tname: 'WP Offload Media (S3)',\n\t\t\t\t\tprice: wpS3.total,\n\t\t\t\t\tbreakdown: wpS3.breakdown,\n\t\t\t\t\tsavings: ((wpS3.total - infinitePrice) \/ wpS3.total * 100).toFixed(1)\n\t\t\t\t});\n\t\t\t}\n\t\t\t\n\t\t\tif (!mediaCloud.notOffered) {\n\t\t\t\tresults.push({\n\t\t\t\t\tname: 'Media Cloud Pro',\n\t\t\t\t\tprice: mediaCloud.total,\n\t\t\t\t\tbreakdown: mediaCloud.breakdown,\n\t\t\t\t\tsavings: ((mediaCloud.total - infinitePrice) \/ mediaCloud.total * 100).toFixed(1)\n\t\t\t\t});\n\t\t\t} else if (sites === 'unlimited') {\n\t\t\t\tresults.push({\n\t\t\t\t\tname: 'Media Cloud Pro',\n\t\t\t\t\tnotOffered: true\n\t\t\t\t});\n\t\t\t}\n\t\t\t\n\t\t\t\/\/ Determine best value\n\t\t\tif (hasVideos || wantsSimple) {\n\t\t\t\tresults[0].bestSolution = true;\n\t\t\t} else {\n\t\t\t\tresults.sort((a, b) => (a.price || Infinity) - (b.price || Infinity));\n\t\t\t\tif (results[0].isInfinite) {\n\t\t\t\t\tresults[0].bestValue = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tdisplayResults(results, infinitePrice);\n\t\t}\n\n\t\tfunction displayResults(results, infinitePrice) {\n\t\t\tconst resultsContainer = container.querySelector('.iu-results');\n\t\t\tconst statsContainer = container.querySelector('.iu-stats');\n\t\t\t\n\t\t\tlet resultsHTML = '';\n\t\t\tlet totalSavings = 0;\n\t\t\tlet maxSavings = 0;\n\t\t\tlet competitors = 0;\n\t\t\t\n\t\t\tresults.forEach(result => {\n\t\t\t\tconst isBest = result.bestValue || result.bestSolution;\n\t\t\t\tconst cardClass = 'iu-card' + (isBest ? ' iu-best-value' : '') + (result.isInfinite ? ' iu-infinite' : '');\n\t\t\t\t\n\t\t\t\tlet badgeHTML = '';\n\t\t\t\tif (result.notOffered) {\n\t\t\t\t\tbadgeHTML = '<div class=\"iu-badge\" style=\"background: #888;\">Not Offered<\/div>';\n\t\t\t\t} else if (result.savings && result.savings > 0) {\n\t\t\t\t\tbadgeHTML = '<div class=\"iu-badge\">You save ' + result.savings + '%<\/div>';\n\t\t\t\t\ttotalSavings += parseFloat(result.savings);\n\t\t\t\t\tmaxSavings = Math.max(maxSavings, parseFloat(result.savings));\n\t\t\t\t\tcompetitors++;\n\t\t\t\t} else if (isBest) {\n\t\t\t\t\tconst badgeText = result.bestSolution ? 'Best Solution!' : 'Best Value!';\n\t\t\t\t\tbadgeHTML = '<div class=\"iu-badge iu-best\">' + badgeText + '<\/div>';\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tlet contentHTML = '';\n\t\t\t\tif (result.notOffered) {\n\t\t\t\t\tcontentHTML = '<div class=\"iu-price-display\">' +\n\t\t\t\t\t\t'<div class=\"iu-price-amount\" style=\"font-size: 1.8rem;\">Not Available<\/div>' +\n\t\t\t\t\t\t'<div class=\"iu-price-period\">for unlimited sites<\/div>' +\n\t\t\t\t\t\tbadgeHTML + '<\/div>';\n\t\t\t\t} else if (result.isInfinite) {\n\t\t\t\t\tcontentHTML = '<div class=\"iu-price-display\">' +\n\t\t\t\t\t\t'<div class=\"iu-price-amount\">$' + result.price + '<\/div>' +\n\t\t\t\t\t\t'<div class=\"iu-price-period\">per month<\/div>' +\n\t\t\t\t\t\tbadgeHTML + '<\/div>' +\n\t\t\t\t\t\t'<div class=\"iu-features\">';\n\t\t\t\t\t\n\t\t\t\t\tresult.features.forEach(feature => {\n\t\t\t\t\t\tcontentHTML += '<div class=\"iu-feature\"><span class=\"iu-check\">\u2713<\/span>' + feature + '<\/div>';\n\t\t\t\t\t});\n\t\t\t\t\tcontentHTML += '<\/div>';\n\t\t\t\t} else {\n\t\t\t\t\tcontentHTML = '<div class=\"iu-price-display\">' +\n\t\t\t\t\t\t'<div class=\"iu-price-amount\">$' + result.price.toFixed(0) + '<\/div>' +\n\t\t\t\t\t\t'<div class=\"iu-price-period\">per month<\/div>' +\n\t\t\t\t\t\tbadgeHTML + '<\/div>' +\n\t\t\t\t\t\t'<div class=\"iu-breakdown\">' +\n\t\t\t\t\t\t'<div class=\"iu-breakdown-item\"><span class=\"iu-breakdown-label\">Plugin License<\/span><span class=\"iu-breakdown-value\">$' + result.breakdown.pluginLicense.toFixed(2) + '<\/span><\/div>' +\n\t\t\t\t\t\t'<div class=\"iu-breakdown-item\"><span class=\"iu-breakdown-label\">Storage Costs<\/span><span class=\"iu-breakdown-value\">$' + result.breakdown.storage.toFixed(2) + '<\/span><\/div>' +\n\t\t\t\t\t\t'<div class=\"iu-breakdown-item\"><span class=\"iu-breakdown-label\">API Costs<\/span><span class=\"iu-breakdown-value\">$' + result.breakdown.api.toFixed(2) + '<\/span><\/div>' +\n\t\t\t\t\t\t'<div class=\"iu-breakdown-item\"><span class=\"iu-breakdown-label\">CDN\/Bandwidth<\/span><span class=\"iu-breakdown-value\">$' + result.breakdown.cdn.toFixed(2) + '<\/span><\/div>' +\n\t\t\t\t\t\t'<div class=\"iu-breakdown-item iu-breakdown-total\"><span class=\"iu-breakdown-label\">Total Monthly Cost<\/span><span class=\"iu-breakdown-value\">$' + result.price.toFixed(2) + '<\/span><\/div>' +\n\t\t\t\t\t\t'<\/div>';\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tresultsHTML += '<div class=\"' + cardClass + '\"' + (isBest ? ' data-badge-text=\"' + (result.bestSolution ? 'BEST SOLUTION' : 'BEST VALUE') + '\"' : '') + '>' +\n\t\t\t\t\t'<div class=\"iu-card-header\"><h4>' + result.name + '<\/h4><\/div>' +\n\t\t\t\t\tcontentHTML + '<\/div>';\n\t\t\t});\n\t\t\t\n\t\t\tresultsContainer.innerHTML = resultsHTML;\n\t\t\t\n\t\t\t\/\/ Update stats\n\t\t\tconst avgSavings = competitors > 0 ? totalSavings \/ competitors : 0;\n\t\t\tconst monthlySavings = competitors > 0 ? (results.filter(r => !r.isInfinite && !r.notOffered).reduce((sum, r) => sum + r.price, 0) \/ competitors) - infinitePrice : 0;\n\t\t\t\n\t\t\tstatsContainer.innerHTML = \n\t\t\t\t'<div class=\"iu-stat-card\"><div class=\"iu-stat-value\">' + maxSavings.toFixed(1) + '%<\/div><div class=\"iu-stat-label\">Maximum Savings<\/div><\/div>' +\n\t\t\t\t'<div class=\"iu-stat-card\"><div class=\"iu-stat-value\">$' + Math.round(monthlySavings) + '<\/div><div class=\"iu-stat-label\">Monthly Savings<\/div><\/div>' +\n\t\t\t\t'<div class=\"iu-stat-card\"><div class=\"iu-stat-value\">$' + Math.round(monthlySavings * 12) + '<\/div><div class=\"iu-stat-label\">Annual Savings<\/div><\/div>' +\n\t\t\t\t'<div class=\"iu-stat-card\"><div class=\"iu-stat-value\">' + competitors + '<\/div><div class=\"iu-stat-label\">Competitors Compared<\/div><\/div>';\n\t\t}\n\n\t\t\/\/ Event listeners\n\t\tcontainer.querySelector('.iu-storage').addEventListener('input', calculate);\n\t\tcontainer.querySelector('.iu-bandwidth').addEventListener('input', calculate);\n\t\tcontainer.querySelector('.iu-sites').addEventListener('change', calculate);\n\t\tcontainer.querySelector('.iu-videos').addEventListener('change', calculate);\n\t\tcontainer.querySelector('.iu-simple').addEventListener('change', calculate);\n\n\t\t\/\/ Initial calculation\n\t\tcalculate();\n\t})();\n\t<\/script>\n\t\n\t<\/div><\/div><\/div><\/body><\/html>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":3787,"featured_media":10648,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-10003","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/pages\/10003","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/users\/3787"}],"replies":[{"embeddable":true,"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/comments?post=10003"}],"version-history":[{"count":0,"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/pages\/10003\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/media\/10648"}],"wp:attachment":[{"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/media?parent=10003"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}