MKV to MP4

A real container rewrite, with the video left completely alone.

Runs locally

Drop files here, or click to choose

Accepts MKV, WebM. No size limit, no sign-up.

Choose a file and this page reads its tracks first — codec, length, keyframe spacing — before anything is written. Nothing is uploaded at any point.

    MKV is a genuinely different container from MP4, not a relabelled cousin. This tool reads the Matroska structure, takes out the compressed video and audio exactly as they are, and writes them into an MP4 container. Nothing is decoded and nothing is re-encoded, so the picture and the sound in the result are the same bytes that were in the source.

    What MKV is, and why files arrive in it

    Matroska is an open container format designed to hold almost anything: any number of video, audio and subtitle tracks, chapters, attachments, and codecs that no other container has a slot for. WebM is a deliberately narrowed version of the same format. That flexibility is exactly why MKV is popular with people who record, archive or re-package video, and exactly why so much consumer software refuses to touch it.

    The awkward part is that flexibility does not travel. Apple software largely ignores MKV. Most phones will not open it. Video editors on Windows are inconsistent about it. Upload forms usually reject it outright. So a file that is technically superior at holding your content is often the file you cannot use, and the fastest fix is to move the content into the container everything accepts.

    Because MP4 and Matroska organise their data differently, this really is a rewrite rather than a relabel — unlike MOV to MP4, where the two containers share the same internal box structure. The good news is that rewriting the container still does not require touching the compressed frames. A 6-second 720p MKV takes about 7 ms here.

    What survives the move, and what does not

    H.264 and HEVC video and AAC audio move across cleanly, and that covers the overwhelming majority of MKV files people need converted. The frames go in untouched, the timing is preserved, and rotation metadata is carried over so a portrait recording does not end up on its side.

    Some things genuinely do not fit. MP4 has no standard slot for the subtitle formats MKV is usually shipped with, so SSA and ASS subtitles cannot come along; if the subtitles are burned into the picture they were never a separate track and they stay. Extra audio tracks — a second language, a commentary — are dropped, because a rewrap has to pick one. The page counts the tracks it is leaving behind and says so before you commit, which matters: a file that silently lost its Japanese audio track looks like a success until someone plays it.

    A few codecs are legal in MP4 on paper but poorly supported in practice, VP9 and AV1 being the common ones in WebM files. We will move them, because that is what you asked for and the bytes are unchanged, but the resulting MP4 may still be refused by an old player. That is a limitation of the destination, not of the conversion, and no tool can fix it without a real re-encode.

    Why this is not the same as a video converter

    Most sites that offer MKV to MP4 upload your file, run a full transcode on a server, and hand back something new. That is why they have size caps, hourly limits, queues and paid tiers — every conversion costs them processor time and bandwidth. It is also why the output is not the same video any more: it has been decoded and compressed again, which always loses something, and the loss compounds every time you do it.

    Remuxing has none of that structure. It costs nothing beyond reading and writing the file, so there is nothing to ration and nothing to upsell. It also cannot lose quality, because there is no encoder in the path at all. The trade-off is honest and narrow: remuxing can only produce a container the existing tracks are allowed to live in. It cannot make an incompatible codec compatible, and it cannot make a file smaller.

    If what you actually need is a smaller file or a different codec, that is a re-encode and we have not built it yet. We would rather point that out here than quietly do a slow, lossy job under a label that promises otherwise.

    Checking the result yourself

    The page reports the number of video and audio packets copied. Compare that with what a media inspector says about your source file: the counts should match. Add the elapsed time as a second signal — a genuine transcode of anything longer than a few seconds cannot finish in milliseconds.

    For the strict version, hash the media data. ffprobe can print a per-packet hash, and after a rewrap the two lists agree item by item. This matters more than it sounds: we found during development that a high-level convenience API in the underlying library silently re-encoded audio while still producing a file that played, reported the correct duration and listed the same codec name. Only the byte comparison caught it, which is why this page uses the low-level packet path and why the byte comparison is part of our release checks.

    And as everywhere on this site: open the Network tab while you convert. Your file is in none of the requests.

    Frequently asked questions

    Is the video re-encoded?

    No. The compressed frames are copied into the new container unchanged, so there is no quality loss and no generation loss if you do it repeatedly.

    Will my subtitles come across?

    No. The subtitle formats normally used in MKV have no standard place in MP4, so they are left behind, and the page tells you when a file had them. Subtitles that are burned into the picture are part of the video and stay.

    What about a second audio track?

    Only the first audio track is carried over. The page counts the extra tracks and warns you before you download, so you can decide rather than find out later.

    Does WebM work too?

    Yes, WebM is a subset of the same container format. Be aware that VP9 and AV1 video, which is common in WebM, is allowed in MP4 but not accepted everywhere — the file will be valid, but an old player may still refuse it.

    Why is the file not smaller?

    Because it holds the same video and audio. Making a video smaller means compressing it again, which is a different operation and a lossy one. This tool deliberately does not do it.

    Is there a file size limit?

    We do not impose one. The practical limit is device memory, because the output is assembled in the browser tab: about 500 MB on a desktop and half that on a phone. The page warns you before you start rather than after the tab dies.