Photos to GIF Maker
Drop several photos, set the order and speed, and get an animated GIF — with letterbox / crop / stretch fit, a live preview, and boomerang. For Instagram, messengers, and blogs.
Your photos never leave your device. GIF encoding (gifenc) runs entirely in your browser.
Preview
400 ms/frame
Fit mode — when a photo's aspect differs from the frame (compare via the yellow ○)
Letterbox
whole photo
white bars
white bars
Crop
fills frame
edges trimmed
edges trimmed
Stretch
fills frame
distorted
distorted
[ AdSense ad slot ]
Fit modes — when aspect ratios are mixed
A GIF has one fixed frame size (based on the first photo). When a photo with a different aspect ratio goes into that frame, the fit mode decides the outcome.
| Mode | Behavior | Cropped | Distorted | Use when |
|---|---|---|---|---|
| Letterbox | keeps aspect + white bars | No | No | you must show the whole photo |
| Crop | keeps aspect + fills, trims edges | Yes | No | you want a full, edge-to-edge frame |
| Stretch | stretches to fill the frame | No | Yes | all photos share the same aspect |
In the preview, a round yellow ○ means aspect kept, a clipped ○ means crop, and an oval ○ means stretch. Compare them right in the live preview above.
Related tools
How is the GIF made? (gifenc · 256 colors)
This tool uses gifenc (MIT license), a small GIF encoder. Each photo is drawn to a canvas, then its pixels are read and (1) quantize builds the best-fit 256-color palette for that frame and (2) applyPalette maps the pixels to palette indices, writing one frame at a time. Because the GIF89a spec allows at most 256 colors per frame, color-rich photos may look slightly simplified.
Why do color-rich photos look rough in GIF?
GIF is a palette-based format (up to 256 colors), not true color (16.7M). Areas where color changes subtly — skies, sunsets, skin tones — get approximated and may show banding or dithering dots. If color matters, use video (MP4); for simple colors, logos, or short motion, GIF is light and plays everywhere.
Is it slow for many or large photos?
Encoding runs in the browser frame by frame, yielding between frames so the UI doesn't freeze. Still, count × resolution drives the time. Keeping "Max width" at 640 or below helps both size and speed. Resize very large, numerous photos before adding them.
Does it work on mobile?
Yes (iOS Safari and Android Chrome — it's canvas-based, no extra wasm). Memory is limited, though, so on phones keep the width around 480–640px and the count to roughly 10.
FAQ
How many photos do I need?
At least two. More frames look smoother but make a bigger file. Burst shots from the same scene produce the most natural GIFs. With one photo you can still preview the framing.
My photos have different aspect ratios — distorted?
Pick a fit mode. Letterbox keeps aspect with white bars (no crop/distort), Crop fills and trims edges (aspect kept), Stretch fills the frame (aspect ignored). With mixed ratios, letterbox or crop usually looks best.
Why do colors look simpler in the GIF?
GIF allows up to 256 colors per frame. Each frame is quantized to a 256-color palette, so gradient-heavy photos may look slightly banded. If color fidelity matters, use video (MP4).
What is boomerang?
It plays forward then backward (1-2-3-2-1) so the end loops smoothly into the start — great for short repeating clips.
My GIF is too big — what now?
Lower the count or resolution (max width). To shrink an already-made GIF, use the GIF Compressor to adjust colors and lossy.
References
Last verified: 2026-06-28 / based on gifenc 1.0.3 (MIT).
- GIF89a spec (up to 256 colors per frame) — W3C 1990
- gifenc (fast JS GIF encoder, MIT license) — GitHub
⚠️ GIF simplifies colors by design. Keep your original photos separately.