Video Compressor for Websites – Smaller MP4, Plays Instantly
Pricing
Pay per usage
Video Compressor for Websites – Smaller MP4, Plays Instantly
Heavy videos slow down websites. Paste video links and get a lighter MP4 (and optional WebM) resized to 360-1080p that starts playing immediately, plus a cover image. Never makes a video bigger than the original. Free during launch.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Mauberme
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
What is it for? Heavy videos make websites slow and eat mobile data. Paste links to your videos and get a lighter copy made for the web: resized to the height you choose, set up to start playing instantly instead of downloading first, plus a cover image to show before it plays. If the original is already efficient, it is only optimised, never made bigger.
Compress and resize videos for your website in one run. Give it a list of public video URLs
(MP4, MOV, MKV, WebM, AVI… anything ffmpeg reads) and get back web-ready MP4 files (H.264 + AAC,
faststart), optional WebM (VP9 + Opus) versions and a JPEG poster frame for the
<video poster> attribute, all downloadable from public links. Great for shrinking 4K phone or
camera footage to 1080p/720p, preparing hero/background videos (muted), or batch-converting a
video library before uploading it to a CMS or CDN.
What it does
- Downloads each video (http/https only, size-limited, internal network addresses blocked).
- Reads duration and resolution with
ffprobe. - Resizes down to your maximum height (360, 480, 720 or 1080 px), keeping the aspect ratio. It never upscales: a 480p source stays 480p.
- Encodes MP4 H.264 (
yuv420p, High profile, CRF quality) with-movflags +faststart, so playback starts before the whole file is downloaded — the #1 fix for slow web videos. - Optionally encodes WebM VP9 (smaller files for modern browsers).
- Keeps audio as AAC 128 kbps stereo, or removes audio for silent autoplay/background videos.
- Extracts a poster image (JPEG) at the second you choose.
Input example
{"videos": ["https://download.samplelib.com/mp4/sample-5s.mp4","https://example.com/uploads/product-demo-4k.mov"],"maxHeight": 1080,"formats": ["mp4", "webm"],"crf": 23,"audio": "keep","poster": true,"posterAt": 1,"maxDurationSeconds": 600,"maxFileSizeMb": 500}
| Field | Default | Notes |
|---|---|---|
videos | — | Public URLs, up to 100 per run |
maxHeight | 1080 | 360, 480, 720 or 1080. Never upscales |
formats | ["mp4"] | mp4 and/or webm |
crf | 23 | 18 (best) – 35 (smallest). WebM uses CRF + 10 on the VP9 scale |
audio | keep | remove for muted hero/background videos |
poster / posterAt | true / 1 | Poster frame second (clamped to the video length) |
maxDurationSeconds | 600 | Longer videos are rejected with an error, never trimmed. Hard cap 1800 |
maxFileSizeMb | 500 | Download size cap. Hard cap 2000 |
Output example
One dataset row per video and format:
{"sourceUrl": "https://download.samplelib.com/mp4/sample-5s.mp4","format": "mp4","width": 854,"height": 480,"durationSeconds": 5.76,"inputBytes": 2848208,"outputBytes": 1643265,"compressionRatio": 1.73,"videoUrl": "https://api.apify.com/v2/key-value-stores/<storeId>/records/001-sample-5s.mp4","posterUrl": "https://api.apify.com/v2/key-value-stores/<storeId>/records/001-sample-5s-poster.jpg","error": null}
compressionRatio = input bytes / output bytes (2.0 means the new file is half the size).
If a video fails (download error, not a video, too long…) you get a row with error filled in and
the run continues with the next video. The files live in the run's default key-value store.
Embed the result:
<video controls playsinline preload="metadata" poster="POSTER_URL"><source src="WEBM_URL" type="video/webm"><source src="MP4_URL" type="video/mp4"></video>
Pricing
Free during launch. This Actor has no usage fee of its own: you only pay Apify's standard platform usage for your runs (on the free Apify plan that is covered by your monthly credit). A pay-per-result price may be introduced later; Apify notifies users in advance of any price change.
Limits
- Up to 100 videos per run, processed one after another.
- Max duration per video:
maxDurationSeconds(default 10 min, hard cap 30 min). - Max input size:
maxFileSizeMb(default 500 MB, hard cap 2 GB). Downloads time out after 15 min. - Only public
http/httpsURLs. Private/internal network addresses are refused. No login, cookies or YouTube/social-media page URLs — use a direct file URL. - Output is capped at 1080p; the Actor never upscales.
- Only the first video and first audio track are kept; subtitles, chapters and metadata are dropped.
- Recommended memory: 4096 MB (default). More memory = more CPU = faster encodes (same price). Long WebM encodes are slow: raise the run timeout for big batches.