|CDN locations Bytescale's content delivery network (CDN) serves your assets from many locations around the world, ensuring minimal download latency for your users.
Note: Bytescale's Standard Coverage CDN is the default CDN setting for all new accounts. Enterprise Plan and Advanced Plan customers can contact sales to enable Bytescale's Extended Coverage CDN (600+ nodes).
|Storage Quota for the total size of all files stored in your Bytescale account.
Note: there is no storage limit when using AWS S3, Google Storage, Cloudflare R2, or DigitalOcean Spaces.
|Bandwidth Bandwidth is counted as the total amount of outgoing data transferred per month.
What is 'outgoing data transfer'? This is all data that leaves Bytescale. This includes downloads of files via Bytescale and transfers from Bytescale to any external storage you may have configured in your account, such as AWS S3, Google Storage, Cloudflare R2, and DigitalOcean Spaces.
Incoming data transfer is free. This includes all uploads to built-in storage. Data transferred from the Internet to external storage is also free.
|Processing Monthly quota for file processing.
What is file processing? File processing is an optional feature that can be used to transform files, for example, to optimize images, video, and audio.
Did you know: Bytescale permanently caches transformation results, meaning you won't be re-billed for the same transformations each month.
|Images Estimated number of new images you can transform (e.g. optimize) per month.
Note: your processing quota (above) and the amount of processing required by your image transformations determine the number of images you can transform per month.
How is processing time calculated? Processing time for image transformations varies based on input and output formats, dimensions, and processing options. Estimated figures on this row are based on resizing a 10MB JPEG from 4000×3000 to 800×600, which takes ~600 milliseconds.
|Documents Estimated number of PDF documents you can generate thumbnails for each month.
Note: your processing quota (above) and the amount of processing required by your documents determine the number of document thumbnails you can generate per month.
How is processing time calculated? Processing time for document thumbnails varies based on document size, output format, dimensions, and processing options. Estimated figures on this row are based on a 5MB A4 landscape PDF (33 pages) with edge-to-edge graphics, which takes ~300 milliseconds.
|Video thumbnails Estimated number of video thumbnails you can generate per month.
Note: your processing quota (above) and the amount of processing required by your videos determine the number of video thumbnails you can generate per month.
How is processing time calculated? Processing time for video thumbnails is the time the thumbnail takes to generate or 8 seconds: whichever is longer. Estimated figures on this row are based on generating a thumbnail from a 1.5GB MP4 video at 1920×1080 (HD), which takes ~5 seconds.
|Videos Minutes of new video content you can produce per month.*
Note: once transcoded, videos can be played an unlimited number of times, up to your bandwidth quota. Your processing quota will not be deducted for additional plays of a processed video output.
* The figures on this row assume SD H.264 video output. Pricing varies depending on output resolution and codec. Please see the "Pricing" section of the Video Processing API documentation for more information.
|40 Encoding Mins
|200 Encoding Mins
|1,200 Encoding Mins
|Audio Minutes of new audio content you can produce per month.*
Note: once transcoded, audio files can be played an unlimited number of times, up to your bandwidth quota. Your processing quota will not be deducted for additional plays of a processed audio output.
* The figures on this row assume AAC or MP3 output. Pricing varies depending on the output format. Please see the "Pricing" section of the Audio Processing API documentation for more information.
|80 Encoding Mins
|400 Encoding Mins
|2,400 Encoding Mins
|Monthly uploads The maximum number of files you can upload per month.
There are no daily, hourly, per-minute or per-second limits on the number of files you can upload.
Note: uploads via custom S3 buckets will count towards your upload usage.
|Max upload size The maximum size of file you can upload.
|Monthly downloads There are no monthly, daily, hourly, per-minute or per-second limits on the number of files you can download.
|Upload widget Embed our beautiful, plug-and-play file upload widget in seconds, with image previews, image cropping, and more.
|File storage Bytescale comes with cloud storage built-in. No complex configuration steps required: all your need is a Bytescale API key, and you can start uploading files.
|File processing Transform and optimize your files in real-time. Bytescale supports: image resizing, image optimization, image cropping, image watermarking, and more.
|Traffic management Bytescale's rules engine allows you to flexibly govern how files are uploaded to your account.
|Rate limiting You can rate-limit uploads using custom dimensions and frequencies. For example: "100 uploads per day per IP" or "5 video uploads per hour per user"
|Traffic limiting You can limit upload traffic using custom dimensions and frequencies. For example: "1 GB per day per IP" or "100 MB of images per hour per user"
|File size limiting File size limits can be configured using complex predicates and are enforced on ingress.
|TTLs / Expiring links You can expire files after a period of time has elapsed, and even redirect users to alternative URLs after your files expire.
|IP Blacklisting You can reject upload attempts based on any number of dimensions, including the source IP address.
|Usage monitoring Monitor your storage, processing & bandwidth usage over time using our beautiful dashboards.
|SSL (HTTPS) All uploads, downloads and file transformations run over HTTPS, keeping you and your users safe.
|Adaptive chunking Upload.js performs multipart file uploads to increase reliability over unstable networks.
|Cancellable uploads Upload.js provides a simple method to cancel any in-progress upload - no need to deal with streams or race conditions.
|Progress reporting Upload.js provides a simple callback for tracking a file's upload progress. Progress events are automatically smoothed using an exponential moving average (EMA).
|Bytescale Storage API The Bytescale API is our REST API, designed for adding file upload functionality to backend, desktop & mobile applications.
|Upload files Bytescale's Storage API supports single-part and multipart file uploads through a simple REST API.
|List files Bytescale's Storage API supports folder listing, both recursively and non-recursively, providing excellent organization of your digital assets.
|Folders Bytescale's Storage API supports an unlimited number of folders, and folder-based permissions, allowing a high degree of organization of your digital assets.
|Metadata & tags Bytescale's Storage API supports custom JSON metadata and tags for every uploaded file.
|Bytescale Media APIs Bytescale offers powerful media processing APIs, capable of resizing and optimizing all media types in real-time.
|Image Processing API Bytescale's Image Processing API is capable of resizing, cropping, optimizing, and watermarking images in real-time.
|Video Processing API Bytescale's Video Processing API is capable of converting, resizing, cropping, trimming, and optimizing videos in real-time.
|Audio Processing API Bytescale's Audio Processing API is capable of converting, trimming, and optimizing audio in real-time.
|Bytescale CDN Use the Bytescale CDN to transform files hosted on your own websites and servers.
|Media optimization Bytescale supports real-time media processing and optimization via simple URL commands.
|Origin shielding Bytescale re-routes all regional edge cache misses to a central edge cache node to minimize traffic to externally-configured file sources (if you have any configured).
|DDoS protection Bytescale protects your assets from DDoS attacks using an integrated web application firewall (WAF).
|Edge caching Bytescale caches files at locations close to your users through a globally distributed edge cache, ensuring fast downloads with minimal latency.
|Permanent caching Bytescale caches transformed files (such as optimized images, videos, and audio) permanently to prevent file reprocessing delays and costs.
|Built-in Storage Every plan includes pre-integrated storage, ready for immediate use in your app.
No additional setup required.
|External Storage Bring your own storage to use with the Upload Widget, Bytescale SDKs, Bytescale Storage API, Bytescale's File Processing APIs, and the Bytescale CDN.
Note: You will not be billed for, or limited by, the amount of storage you use in AWS S3, Google Storage, Cloudflare R2, or DigitalOcean Spaces.
|HTTP Reverse Proxy Optimize images, videos, and audio hosted elsewhere using our File Processing APIs, and serve the results via the Bytescale CDN for ultra-low latency downloads and permanent result caching.
|AWS S3 Use your own AWS S3 bucket as read/write storage for your Bytescale account.
Note: You are not billed for, or limited by, the amount of storage in your AWS S3 bucket(s).
|Cloudflare R2 Use your own Cloudflare R2 bucket as read/write storage for your Bytescale account.
Note: You are not billed for, or limited by, the amount of storage in your Cloudflare R2 bucket(s).
|DigitalOcean Spaces Use your own DigitalOcean Space as read/write storage for your Bytescale account.
Note: You are not billed for, or limited by, the amount of storage in your DigitalOcean Space(s).
|Google Storage Use your own Google Storage bucket as read/write storage for your Bytescale account.
Note: You are not billed for, or limited by, the amount of storage in your Google Storage bucket(s).
|Authenticated uploads Authenticate and authorize your file uploads using JWTs together with your application's own security layer.
|Authenticated downloads Authenticate and authorize your file downloads using JWTs together with your application's own security layer.
|Support via Slack Have in-depth discussions with our developers & support staff via Slack.
|Support via Zoom Have in-depth discussions with our developers & support staff via Zoom.
|Custom domain Configure a custom domain (CNAME) to host your assets.
|Upload acceleration Upload acceleration works by routing file uploads through a globally distributed Content Ingestion Network (CIN) to minimize network latency and congestion.
|Enterprise support Enterprise support with our expert team via email, Slack, or Zoom.