utilime

Small tools that finish the job.

Crop a video

Cut the frame down to the shape the place you are posting to insists on.

Drop a file hereor click to choose · it stays on your device

How it works

A crop on a video is usually not a framing decision. It is a shape requirement handed down by wherever the clip is going. Reels, TikTok and Shorts are built around 9:16. A feed tile is square. Anything that will sit inside a page as an embedded player is 16:9. Footage rarely arrives in the shape it is wanted in, because cameras and screen recorders produce 16:9 while a phone held upright produces 9:16, and no upload form converts between the two on your behalf.

What a service does with the wrong shape is the argument for fixing it beforehand. The mild response is padding: the player fits the whole frame inside its own and fills the remainder with black, so a landscape recording in a vertical slot occupies a strip across the middle of a phone screen and reads as an accident. The other response is to fill the slot by cutting, and the cut is taken from the centre of the frame. Instagram shows a feed post no taller than 4:5, or 1080×1350, and a taller upload loses the top and the bottom to that rule.

Neither outcome is chosen by anyone who cares about the shot. The centre of a hand-held clip is where the camera happened to be pointing, not where the subject ended up, so an automatic centre cut takes a person's head off roughly as often as it frames them.

Crop first, scale second

The rectangle is taken out of the decoded frame before any resizing happens, and that order decides how much resolution survives. A 1920×1080 recording cropped to 608×1080 is a full-height 9:16 frame: every row of the original is still in it. Scaling that to 1080×1920 afterwards is an enlargement, and an enlargement invents pixels no camera recorded. Crop to the ratio on this page, then take the result to resize-video if an exact pixel size is required.

Cropping always touches pixels, so the clip is always decoded and encoded again. No packet in the source describes only the region inside the rectangle. The encoder is handed the source's own measured average bitrate rather than an internal default, and it now has fewer pixels to spend that budget on, so a crop that discards half the frame typically comes back smaller than the original while carrying more bits per pixel.

Why a 401-pixel selection becomes 400

Colour is not stored at full resolution. The codecs used here subsample chroma at 4:2:0: one pair of colour samples covers a two-by-two block of brightness samples, quartering the colour data for a loss that is close to invisible on real footage. An odd width leaves a final column of brightness with no colour block to belong to.

Encoders decline that frame rather than guess at it, so both sides of the rectangle are rounded down to an even number before the job starts. A 401-pixel selection is written as 400. The pixel comes off the edge rather than being added, which keeps the crop inside what was drawn, and the readout on the rectangle already shows the even figure so the download is never a surprise.

One further detail about where the rectangle is measured. A clip from a phone often carries a rotation flag instead of rotated pixels, and the flag is applied before the crop. The coordinates therefore describe the picture as it appears on screen, not the orientation it happens to be stored in.

Questions

Does the video leave my machine while I am dragging the rectangle?

No. The preview plays from a blob URL created inside the page, and the crop itself runs in a Web Worker on your own processor. Open developer tools, keep the Network tab visible through a whole job, and every entry listed is a same-origin request for this page's own code. None of them carries the clip.

Which ratio should I pick?

9:16 for Reels, TikTok and Shorts. 1:1 for a square feed tile, which is also the safest shape for a video that will be shown at an unknown size. 4:5 for the tallest a feed post is displayed at. 16:9 for an embedded player or anything going on a page. Original when the point is to remove something at the edge of the frame rather than to change the shape at all.

The output is a pixel or two smaller than the rectangle I drew.

Both sides are rounded down to an even number, because chroma is stored on a two-pixel grid and an encoder will not accept a side with half a block left over. Nothing is scaled to make up the difference: a 401×225 selection is encoded as 400×224, and the note beside the download reports the dimensions that were actually written.

Can I shorten the clip at the same time?

Not on this page. Run trim-video first and bring the shortened clip here. That order costs less: trim-video sets out when a cut can copy compressed packets instead of re-encoding them, while a crop re-encodes whatever it is given, so trimming first means the expensive pass runs over less footage.