Trusted by 1000s of developers to simplify for file storage, realtime media processing, and optimized content delivery.
// Upload files with a few lines of code:import { UploadManager } from "@bytescale/sdk";const file = event.target.files[0]; // <input type="file" onchange="..." />const uploadManager = new UploadManager({ apiKey: "API_KEY" });const { fileUrl } = await uploadManager.upload({ data: file })
// ...or use the Bytescale Upload Widget:import { UploadWidget } from "@bytescale/upload-widget";UploadWidget.open({ apiKey: "API_KEY" });
// ...or use the Bytescale REST API:curl "https://api.bytescale.com/v2/accounts/ACCOUNT_ID/uploads/form_data" \ -H "Authorization: Bearer API_KEY" \ -F file=@image.jpg # File must exist locally (include @).
Accept file uploads from your users in seconds.
Bytescale's embeddable Upload Widget allows you to receive any file type from your users, and supports image cropping, video previews, PDF previews, and more.
Enjoy modern SDKs that install in 7 lines of code:
File upload and media processing APIs that are so simple and well documented, they don't require SDKs.
File uploading: with a single HTTP request.
File management: folders, file metadata, and more.
External storage: map any folder to external storage.
Resize, crop, convert, optimize, and watermark images with simple URL commands.
Optimize images: WebP, AVIF, BlurHash & more.
Convert images: HEIC, GIF, JPG, PDF & more.
Resize & crop images: supports auto cropping.
Upgrade your web app to the latest image technologies, from BlurHash image placeholders, to WebP and AVIF.
BlurHash: for instant image placeholders.
Improve performance: improve your website's Google PageSpeed score by reducing Largest Contentful Paint (LCP) with BlurHashes.
Reduce bandwidth by up to 90%: with WebP, AVIF, and configurable image quality and compression.
Resize, trim, crop, convert, and optimize your videos with simple URL commands.
Optimize & convert videos: set bitrate & more.
Video thumbnails: automatic & manual.
Real-time transcoding: playback in seconds.
Stream your videos to millions of viewers in seconds, with adaptive bitrate (ABR) and real-time transcoding.
Adaptive Bitrate (ABR): stream in multiple bitrates and resolutions for difference devices.
HTTP Live Streaming (HLS): reduce bandwidth usage, playback latency, and buffering.
H.264, H.265, VP8 & VP9: optimized next-generation video codecs.
Convert, optimize, and concatenate audio files with our real-time audio processing APIs.
Convert audio: from almost any input format.
Optimize audio: set sample rate, bitrate, etc.
Real-time transcoding: playback in seconds.
Stream audio content to millions of listeners in seconds, with adaptive bitrate (ABR) and real-time transcoding.
Adaptive Bitrate (ABR): offer your users multiple bitrates and quality settings.
HTTP Live Streaming (HLS): reduce bandwidth usage, playback latency, and buffering.
HLS, AAC, MP3 & WAV: multiple outputs supported.
Did you know: you can bring your existing storage to Bytescale, giving you realtime media processing APIs and an ultra-fast CDN, without needing to move your files.
Built-in storage: Works out of the box.
External storage: AWS S3, Google Storage, Cloudflare R2, and DigitalOcean Spaces.
Reverse proxy support: process images, videos, and audio hosted elsewhere via HTTP.
Optionally protect your images, videos, and audio using JWT-based auth, to give your app control over file access permissions.
Public file access: serve public assets for your app or website.
Private file access: use JWTs to authorize uploads and downloads via your own API.
Serve images, videos and audio to millions in seconds, with a media-optimized CDN and media processing APIs.
Up to 90% smaller images, videos & audio
~10ms latency: edge-cache hits
~200ms latency: perma-cache hits*
* Bytescale uses a permanent cache to return processed images, videos and audio near-instantly on all edge-cache misses, forever.
Optimize and serve images, videos, and audio at lightning-fast speeds
to reduce page load times and improve the UX of your web app.
Realtime Media Processing
External Storage Support
Permanent Caching
600+ Locations
Bytescale outperforms bundled, home-grown, and dedicated image processing solutions in cost efficiency, making it the top choice for large web apps.
Low pricing: $0.25 per 1000 source images*
(Industry average: $5 - $15 per 1000 source images.)
No monthly re-billing: no charge for image optimizations you've already performed.
(Many vendors charge for the number of optimized images requested each month, even if you've optimized them before.)
Adjustable costs: configure processing time vs. bandwidth to suit your app's traffic profile.
Permanent caching
* Bytescale charges based on processing time, which you can control through image compression, image quality, output format, and output dimensions. $0.25 per 1000 images is based on 600ms of processing time per image, which is the approximate time it takes to process a 4000×3000 JPEG into a thumbnail.
Bytescale handled millions of new images per month for our viral marketing campaign. It's a powerful, scalable platform.
— Zeke Sikelianos, Data Scientist, Replicate
Start serving optimized images, videos, and audio. Whether you need to add file uploads to your app, or your files are already hosted elsewhere, Bytescale is the right solution for you.
✓ No credit card required. ✓ Try free for 14 days.
Process media files on-demand and serve the results in milliseconds, with web-optimized output formats.
Media API ReferenceGive your users the best file upload experience with our drop-in widget, which installs in 7 lines of code.
Upload API Reference