Container vs codec
A video format like MP4 is a container — a box that holds a video stream, an audio stream, and metadata. The actual compression is done by a codec like H.264 or VP9. That's why the same .mp4 file can play on one device and fail on another: the container is fine, but the codec inside isn't supported.
MP4 — the universal default
MP4 with H.264 video and AAC audio plays essentially everywhere: phones, TVs, browsers, editors, chat apps. When you don't know where a video will be played, MP4 is the answer. It's also the format most social platforms expect.
WebM — small files for the web
WebM (VP8/VP9) compresses well and is free to use, which makes it popular for web publishing. But some players and most messaging apps don't accept it. Use WebM when you control where the file plays; convert to MP4 for sharing.
MOV and MKV — the specialist containers
MOV is Apple's container, common in iPhone footage and professional workflows; it plays fine on Apple devices but can trip up Windows or Android. MKV is the open "everything box" — it supports many audio and subtitle tracks, which is why rips and TV boxes use it, but smart TVs and chat apps often reject it.
How to pick and convert
Rule of thumb: MP4 for anything you'll send, post, or play somewhere unknown; WebM when you need small web-ready files; MOV or MKV only when your workflow demands them. When a file won't play somewhere, converting it to MP4 in the browser — no upload, no install — solves it in seconds.