Skip to content
CreatorPrivacyKit
Media · Video Compressor · Live

Compress MP4 and MOV with WebCodecs in this browser.
Hardware encoding only when the browser provides it.

Compress MP4 and MOV with WebCodecs in this browser. Hardware encoding only when the browser provides it?

Shrink MP4, MOV, and WebM in this browser with WebCodecs. No upload and no server queue; your video stays on this device. Hardware encoding only when this browser exposes it. MKV is accepted when the browser can decode it. Processing stays in this tab.

Last updated

Shrink MP4, MOV, and WebM in this browser with WebCodecs. No upload and no server queue; your video stays on this device. Hardware encoding only when this browser exposes it.

100% Local No Upload Your video never leaves this device Privacy clean output
▶

Drop an MP4, MOV, or WebM

MKV is accepted when the browser can decode it. Processing stays in this tab.

No preview

Video

— · source stays on this device

Container
—
Duration
—
Dimensions
—
Frame rate
—
Video codec
—
Video bitrate
—
Audio codec
—
Audio bitrate
—
Audio tracks
—
Est. output
—
Destination target:
Detecting…
Compressing0%
Elapsed
00:00
Remaining
—
Processing FPS
—
Source duration
—
Bytes written
—
Ratio so far
—
Path
—
Target resolution
—

Compressed locally

Original
—
Compressed
—
Saved
—
Time
—
Speed
—
Codec
—
Engine
—
Resolution
—
Privacy clean output

Verify it yourself (F12 Network)

This workflow processes your file in this browser tab. Opening DevTools is optional; it is the simplest way to watch what the page actually requests.

  1. Press F12 (or ⌥⌘I). Open DevTools, then the Network tab, before you start.
  2. Start the local job (clean, OCR, compress, merge).
  3. You can also disconnect the network after the page has loaded its UI. Same-origin engine/WASM/language files may still be cached from an earlier visit.
  4. Your file bytes are not POSTed to CreatorPrivacyKit for this step. Page HTML, CSS, and same-origin runtime assets still load over the network when they are not cached.

Expected Network activity: this site’s CSS/JS, and — after you run the tool — same-origin WASM, codec, or OCR language data. That is a download of our engine, not an upload of your file.

Processing location
This browser tab
Media upload to our servers
Not part of this workflow
Remote analysis of your file
No

This panel is a product fact, not a live packet sniffer. We do not invent a request counter. Ads, extensions, and your own later clicks can still create network traffic.

How compression runs in this browser, with no upload and no server queue

Decode, scale, and encode happen in this tab. CreatorPrivacyKit does not take the video for a server transcode.

⚡

WebCodecs in this tab

The browser demuxes, decodes, and re-encodes on this device with WebCodecs. The file stays in this tab.

🔒

No upload to this site

Frames and audio stay in this tab’s memory and temporary browser storage. There is no compressor upload API. That is a real difference from a converter that needs the whole file first.

🔍

Watch the Network panel

Open Developer Tools, switch to Network, and start a compress. The media file is not posted to a CreatorPrivacyKit transcode endpoint. Disconnecting the network is a rough extra check, not a formal audit.

📏

Compare the exported bytes

Compare the download with the input. The page shows the byte change. A megabyte target is the upper size you set.

Local browser versus a cloud converter

Upload converters need the whole file first. This page compresses on this device. That is the upload difference. It is not a claim that nothing can go wrong on this computer.

What you are comparing This page (browser, no upload) Typical upload converter
File upload No upload The source stays in this browser. Full upload The whole file is sent to a remote host.
Queue Starts on this machine. There is no shared transcode line. Often queued. Free tiers delay or cap jobs.
Size plans No paid file-size plan. You are still limited by this device. Free tiers often cap megabytes and charge for more.
Where the file sits We do not keep a copy of your video on our servers. Files commonly sit on the converter’s disks for a while.
What still can go wrong No upload to this site. Malware on this device, a browser bug, or you later uploading the output are still possible. A server breach, staff access, or a misconfigured bucket can expose the original.
Container metadata Re-encoding writes a new MP4 (H.264) or WebM (VP9/AV1) and drops supported container metadata. Pixel-domain watermarks stay. Behavior varies. Some keep camera headers or add converter tags.

Size targets for Discord, email, and chat apps

These figures come from vendor help pages checked in September 2026. Apps change limits. A preset is a target — look at the file you actually get.

🎮

Discord

20 MB non-Nitro (FAQ, Aug 2026) · 50 MB Nitro Basic · 1 GB Nitro

Discord’s File Attachments FAQ lists 20 MB for non-Nitro chat attachments as of August 2026, with 50 MB on Nitro Basic and 1 GB on Nitro. Discord also says it is testing other caps for some users, so the number in your app wins. The in-tool 19 MB Discord target is a margin under the stated 20 MB, not a send guarantee. Nitro was 500 MB. Server Boost Level 2 is 50 MB and Level 3 is 100 MB, for members of that boosted server only. Discord checks file size before its own compression, including on mobile. Open the Discord compressor or read the 20 MB field note.

Source updated August 2026 · checked September 21, 2026 Official source

✉️

Email attachments

Gmail consumer ~25 MB then Drive · Outlook.com and internet accounts 20 MB message size · Exchange default 10 MB

Gmail Help says consumer accounts typically allow about 25 MB of attachments and then insert a Drive link. Workspace attachment size is set by the administrator. Outlook on Outlook.com and internet accounts uses a 20 MB message size, which includes the attachment and the message. The Exchange default is 10 MB, and an administrator can change it. MIME/Base64 can make the sent size larger than the file on disk. Compress for Gmail or Outlook or read the email attachment note.

Checked September 21, 2026 Official source

💬

WhatsApp

64 MB as video · 100 MB on a faster connection · 2 GB as a document

WhatsApp Help puts a 64 MB ceiling on videos sent as video. Faster connections may default to 100 MB / 720p. Sending as a document is a separate 2 GB path. Those are upload caps, not a promise WhatsApp will keep your bitrate.

Checked September 21, 2026 Official source

📱

LINE

Chat has no official MB cap · VOOM ended 30 Sep 2026

LINE chat still has no official universal video MB cap. LINE VOOM, including Official Account VOOM posts, ended 30 September 2026 (around 11:00 JST) per LINE Help. Account rollout varies, and some Official Account content remains in LINE Home. Historic VOOM posts were 500 MB; that was not a chat limit. Official Account broadcast video is still 200 MB. Chat and broadcast messaging continue. Check the size LINE shows before you send.

Source updated July 2026 · checked September 30, 2026 Official source

🎬

Local creator workflows

No upload here — still limited by this device

For client reviews and unreleased footage, keep the camera master offline and make a smaller MP4 on this device. Video compression guide · Compress without uploading.

Frequently Asked Questions

No. Video compression runs 100% locally inside your browser using the W3C WebCodecs API and client-side demuxing. Your video frames and audio samples are processed strictly in device memory and temporary browser storage. You can disconnect from the internet or inspect your browser's Network tab to confirm zero bytes are uploaded.
Discord's File Attachments FAQ lists 20 MB for non-Nitro chat attachments as of August 2026, 50 MB for Nitro Basic, and 1 GB for Nitro. Discord also says it is testing different limits for some users, so the number in your app wins. The compressor's 19 MB Discord target is a margin under the stated 20 MB cap — a size target, not a guarantee the file will send.
Gmail consumer accounts typically allow about 25 MB of attachments and then insert a Drive link. Outlook.com on the web is also 20 MB; desktop Outlook internet accounts often allow about 20 MB including the message. Exchange and other hosts can differ. MIME/Base64 can make the sent size larger than the file on disk. Use the 20 MB or 25 MB preset as a starting point and check the actual output size.
Video file size is determined mathematically by bitrate multiplied by duration (Size = Bitrate × Duration), not pixel resolution alone. Downscaling from 1080p to 720p without reducing the target bitrate produces a file of the same size. Lowering resolution is useful because it allows a lower bitrate without introducing severe compression artifacts.
Input containers include MP4, MOV, WebM, and MKV when the browser can demux it. A typical successful run writes MP4 (H.264 / AAC). If the selected encoder is VP9 or AV1, output is WebM instead. Playback still depends on the destination app and codec support. HEVC or AV1 may appear in Advanced controls when the browser exposes them.
Yes. When re-encoding, CreatorPrivacyKit writes a new MP4 or WebM container and drops camera identifiers, decimal GPS coordinates, recording timestamps, QuickTime user metadata (udta), XMP packets, and C2PA provenance credentials. Only audio/video sample streams are preserved. Note that invisible pixel watermarks cannot be removed by container metadata stripping.
The compressor encodes in this browser tab with WebCodecs. It uses a hardware encoder when this browser offers one, such as Apple VideoToolbox, Intel QuickSync, NVIDIA NVENC, or AMD AMF. The file stays in this tab.
Yes. QuickTime MOV and MP4 share the ISO-BMFF container family and are supported. MKV is accepted when the browser can demux the streams. Typical output is MP4; VP9 or AV1 writes WebM. That is not a promise it will play in every app or messenger.