1:1 clip on a 540x960 TikTok canvas: cover, contain or blur
A 1080x1080 clip on a 540x960 Timeline canvas: contain leaves 210 px bars top and bottom, cover cuts 420 px, blur fills the bars. All cost $0.10 a minute.

On a 540x960 canvas, a 1080x1080 clip scaled to fit is 540x540 and leaves two bars of 210 pixels, top and bottom, with fit: contain. With fit: cover it is scaled to 960x960 and 420 pixels of width (43.75 percent of the scaled picture) are cut. With fit: blur, the bars are filled with a blurred copy. 540x960 is TikTok's non-Spark minimum for 9:16 (page read 2026-10-08), and Timeline accepts it, since each edge may be an even integer between 256 and 2,160.
The arithmetic
Timeline's video[].fit takes cover (default), contain, stretch or blur. The default output is 1080x1920, so send output.width: 540 and output.height: 960 for this canvas.
| fit | Scale | Result on canvas | Picture lost |
|---|---|---|---|
| contain | 540 / 1,080 = 0.5 | 540x540 centred; bars 210 px top and 210 px bottom | None |
| cover | 960 / 1,080 = 0.889 | 960x960, cropped to 540 wide | 420 of 960 px (43.75 %) |
| blur | as contain | 540x540 centred over a blurred copy | None |
| stretch | width 0.5, height 0.889 | 540x960, distorted | None, but squashed |
Which one for an ad
Contain keeps the whole square but shows two flat bars, which can look unfinished. Blur keeps the square and fills the bars, and it is the usual choice for a product shot where the full frame matters. Cover fills the frame, but it cuts almost half of the width, which removes text at the left and right. Stretch changes the shape of faces, and it is rarely right.
- Text near the left or right edge of a square: use blur or contain.
- A centred subject with room around it: cover works.
- Round logos: check them after
stretch; they become ovals.
Other square sizes on the same canvas
The ratios depend only on the ratio of the clip. A 720x720 clip on 540x960 with contain scales by 540 / 720 = 0.75 to 540x540, so the bars are the same 210 pixels. With cover it scales by 960 / 720 = 1.333 to 960x960 and crops the same 420 pixels. The bar size does not depend on the size of the square, only on its ratio and the canvas. A source that is smaller than the canvas is scaled up, so a 640x640 TikTok square is enlarged to 960 pixels with cover, which softens the picture.
Pick the canvas size on purpose
540x960 is the smallest size that TikTok accepts for 9:16 non-Spark ads. A 1080x1920 canvas costs the same, because Timeline bills the output minute at $0.10 at any size, and it gives the platform more pixels to work with. Use 540x960 for quick drafts or for a size limit, and 1080x1920 for the upload. Remember the 516 kbps floor and the 500 MB cap; both are on the same TikTok page.
Sources
Related posts
More in Media tools
- Crop a 21:9 video to 9:16, 4:5, 1:1 and 16:9: fraction table
From a 21:9 source, a full-height crop is 0.2411 wide for 9:16, 0.3429 for 4:5, 0.4286 for 1:1, 0.7619 for 16:9. $0.02 per crop; the check is free.
- 24 character stills on gpt-image-2.5: 24c low, 48c medium, $1.68 high
If you omit quality, gpt-image-2.5 defaults to high. 24 stills (8 characters, 3 poses) cost 24c at low, 48c at medium and 144 to 168c at high on Sume.
- A 30-second music bed under a 70-second render costs $0.325
One Music Router track at $0.125 plus a 70-second Timeline render at $0.20 is $0.325. Use soundtrack loop, fade_out_seconds up to 10 and duck_db 0 to 20.
- 45-minute recording: audio detach fails past 1800 s, what to do
Sume audio detach accepts a source up to 1800 seconds and returns up to 900. A 45-minute video is 2700 s, so trim first. Here is the arithmetic.
Written by Sume