Skip to content

Convert GIF to MP4 on Mac: 3 Methods

Convert GIF to MP4 on Mac with GetCompress, QuickTime when you still have video, or FFmpeg. Smaller files and smoother motion with full color.

By Petr Samokhin

Your bug repro GIF is 18 MB. The same loop as MP4 is often 1 to 2 MB with full color and smooth motion. Slack, Notion, GitHub, and most doc tools accept video now, but old templates still say GIF. Converting GIF to MP4 is the fastest fix when the destination allows video. Keep unreleased product UI off random upload sites.

Three solid routes cover most Mac jobs: GetCompress for local convert with preview, QuickTime when you still have the video master, and FFmpeg for exact flags.

Method 1: GetCompress

Best for: Converting existing GIFs (or exporting MP4 from MOV/MP4 sources) with trim and frame preview before you attach to a ticket.

GetCompress main window with media queued and video format, resolution, and quality settings open
  1. Drop a GIF into GetCompress , or drop MOV/MP4 to skip the GIF middle step.
  2. Trim idle frames in preview.
  3. Choose MP4, set width (960 px covers most bug reports), and export.
  4. Compare file size against a GIF export in the same window if the thread still debates format.

Processing stays on your Mac. Save a preset such as “bug MP4 960w 24fps”. When the destination still requires GIF, export at 640 px instead of shipping an 18 MB full-screen capture ( compress GIFs on Mac ).

Method 2: Export MP4 from the video source

Best for: When you still have the original screen recording and the thread allows video.

  1. Open the recording in QuickTime Player (prefer the MOV/MP4 master over the GIF).
  2. Edit → Trim (⌘T) to the action only.
  3. File → Export As… → 720p.

Skip GIF entirely when the source video still exists. Wide canvas GIFs from full-screen captures convert to oversized MP4 unless you scale down; starting from a trimmed master is cleaner.

Limitation: Does not help when the GIF is the only file left.

Method 3: Convert with FFmpeg

Best for: Exact scale, fps, and CRF when you only have the GIF.

brew install ffmpeg
ffmpeg -i demo.gif -movflags faststart -pix_fmt yuv420p -vf "scale=960:-2,fps=24" -c:v libx264 -crf 23 demo.mp4

Smaller file:

ffmpeg -i demo.gif -movflags faststart -pix_fmt yuv420p -vf "scale=640:-2,fps=15" -c:v libx264 -crf 26 demo-small.mp4

Batch:

mkdir mp4-out
for f in *.gif; do
 ffmpeg -i "$f" -movflags faststart -pix_fmt yuv420p -vf "scale=960:-2,fps=24" -c:v libx264 -crf 23 "mp4-out/${f%.gif}.mp4"
done
ParameterSmaller fileBetter quality
scale width640960 to 1280
fps1524 to 30
-crf26 to 2820 to 23

Keep the original GIF until you verify text readability in the MP4 on the target platform.

Limitation: You maintain the commands.

Which method should you use

SituationStart here
Recurring ticket clips, preview, or batchGetCompress
Video master still on diskQuickTime
Exact flags or automationFFmpeg

Other direction: video to GIF on Mac . General video size: how to compress video on Mac .

Why convert GIF to MP4

FactorGIFMP4 (H.264)
5 s UI demo sizeOften 5 to 20 MBOften 1 to 3 MB
Color quality256 colors, bandingFull color
Motion smoothnessLimited by fps capSmooth at 24 to 30 fps
Upload tool supportLegacy formsMost modern tools

Confirm the tracker accepts MP4 before you convert. Many issue trackers switched to video years ago but left GIF in the template text.

When QuickTime or FFmpeg is enough

QuickTime can work when the video master is available and one export is ready to send. FFmpeg is enough when you already keep a convert recipe in the team README.

GetCompress also helps when design sends oversized GIFs from Principle or After Effects, when QA needs the same width every week, or when you want to compare MP4 and GIF exports in one place. Prefer MP4 for screen repros whenever the thread allows it.