GIPHY Clips specs: 30 seconds, 9:16 to 16:9, 100 MB, 24 or 30 fps
GIPHY Clips are 30 seconds or less, between 9:16 and 16:9, up to 100 MB at 24 or 30 fps, with sound and no black bars. Render one with Sume.

GIPHY Clips are 30 seconds or less, in MP4, MOV or WebM, with an aspect ratio between 9:16 and 16:9, up to 4K, 100 MB maximum, at 24 or 30 fps. They must have sound, and GIPHY asks for no black bars and no end cards or CTAs. Clips creation is only for upgraded Brands and Artists. Specs are from GIPHY Support, read 2026-10-01.
What are GIPHY's Clips rules?
| Item | Requirement |
|---|---|
| Length | 30 seconds or less |
| Formats | mp4, mov, webm |
| Aspect ratio | Between 9:16 and 16:9 |
| Resolution | Up to 4K |
| File size | 100 MB maximum |
| Frame rate | 24 or 30 fps |
| Audio | Must have sound, about -8 dB, music only discouraged |
| Avoid | Black bars, end cards, CTAs |
| Title and description | 50 and 200 characters |
How do I render a Clip without black bars?
Timeline's fit setting per slot is cover, contain, stretch or blur. cover fills the frame, which avoids the bars GIPHY discourages, while contain and blur add padding or a blurred fill. Timeline 1.0 (POST /v1/timeline-1.0/render) takes output.width and output.height as even integers from 256 to 2160 and output.fps of 24, 25, 30 or 60, or omits fps to match the sources. It needs an Idempotency-Key, accepts only media.sume.com sources, and returns one MP4 at $0.10 per output minute, rounded up. The unbilled POST /v1/timeline-1.0/plan previews the cost first.
curl -X POST https://api.sume.com/v1/timeline-1.0/render \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: giphy-clip-001" \
-d '{
"audio": { "mode": "silence", "duration_seconds": 15 },
"output": { "width": 1080, "height": 1920, "fps": 30 },
"video": [
{ "source_url": "https://media.sume.com/artifacts/artf_demo/shot.mp4",
"start": 0, "duration": 15, "fit": "cover" }
]
}'Which frame rates match?
output.fps takes 24, 25, 30 or 60. Use 24 or 30, since GIPHY lists only those. 25 and 60 are outside its stated range.
What about the sound requirement?
GIPHY says Clips must have sound. A Timeline render needs an audio spine (audio.url, audio.parts[], or audio.mode: "silence"), and a silent spine would leave you with no sound, so supply a real audio file. Sume's docs do not claim any loudness target, so check the -8 dB figure with your own tool.
How do I verify the file?
Probe the finished file with Video inspect 1.0. With frames: false it is a probe only, it is unbilled, and it reports width, height, container, fps and duration_seconds. It does not report file size, codec or bitrate, so check those with a local tool before you upload.
GIPHY's rules include no end card, so check the last frame.
Sources
Related posts
More in Media tools
- Reuse a social video as a YouTube ad: probe the file first
Google says social assets can run as YouTube ads if they meet specs. Probe the clip with Sume's unbilled video-inspect, then trim it if it is too long.
- Instacart 3200x800 and 3200x400 banners: what Sume can make
Instacart banners are 3200x800 (4:1) and 3200x400 (8:1). Sume lists 4:1 and 8:1 ratios but no exact-pixel size in v1, so the final crop is yours.
- Instacart lifestyle image: 1600x896 passes the 1067x600-1600x900 box
Instacart display ads take a 16:9 lifestyle image of 1067x600 to 1600x900, 1 MB max. Sume's custom size needs multiples of 16, so ask for 1600x896.
- Instacart video thumbnail 1067x600 to 1600x900 from a clip
Instacart wants a 16:9 JPG or PNG thumbnail of 1067x600 to 1600x900, 10 MB max. Pull a still from your video with the unbilled video-frames route.
Written by Sume