How to Trim and Cut Videos Online Without Losing Quality
Learn how to trim, cut, and split videos without quality loss using online tools, FFmpeg, and desktop apps. Covers lossless cutting, re-encoding tradeoffs, and frame-accurate editing.

Learn how to trim, cut, and split videos without quality loss using online tools, FFmpeg, and desktop apps. Covers lossless cutting, re-encoding tradeoffs, and frame-accurate editing.

Every great video starts with removing what does not belong. Whether you are cutting the awkward first few seconds of a meeting recording, isolating a highlight from a long gameplay session, or preparing clips for social media, trimming is the most fundamental video editing operation.
The challenge is doing it without degrading quality. Most video editors re-encode the entire file when you make even a small trim, which takes time and introduces generational quality loss. In this guide, we will show you how to trim videos using methods that range from completely lossless to high-quality re-encoding, so you can choose the right approach for every situation.
These terms are often used interchangeably, but they refer to slightly different operations:
| Operation | Description | Result |
|---|---|---|
| Trimming | Remove start and/or end portions | One shorter clip |
| Cutting | Remove a section from the middle | One clip with a gap removed |
| Splitting | Divide a video into multiple parts | Two or more separate clips |
| Joining | Combine multiple clips into one | One longer video |
All of these operations share the same underlying technical process: specifying time ranges and extracting or combining segments. The key difference is in how many input and output files are involved.

The fastest way to trim a video is using an online tool. ConvertIntoMP4's Video Trimmer provides a visual timeline interface where you can set precise start and end points.
This method works directly in your browser on any device. There is no software to install, no account required for basic use, and the processing happens on powerful cloud servers so even large files are handled quickly.
Pro Tip: When trimming for social media, combine the Video Trimmer with the Video Compressor to get your clip under the platform's size limit. Most platforms cap uploads at 100-500 MB depending on account type.
FFmpeg is the gold standard for video manipulation. Its ability to copy streams without re-encoding makes it the best choice for lossless trimming.
ffmpeg -i input.mp4 -ss 00:01:30 -to 00:04:00 -c copy output.mp4
This command extracts the segment from 1 minute 30 seconds to 4 minutes without re-encoding. The -c copy flag tells FFmpeg to copy both video and audio streams as-is.
Here is the catch with lossless trimming: video codecs like H.264 and H.265 use keyframes (I-frames) that occur periodically throughout the video. You can only make lossless cuts at keyframe boundaries. If your trim point falls between keyframes, one of two things happens:
-c copy: FFmpeg snaps to the nearest keyframe, so your trim may start a few seconds before or after your intended pointWhen you need precise cuts, re-encode with quality settings that match or exceed the original:
ffmpeg -i input.mp4 -ss 00:01:30 -to 00:04:00 -c:v libx264 -crf 18 -preset slow -c:a aac -b:a 192k output.mp4
The smartest approach combines both methods. Re-encode only the frames around the cut points and stream-copy everything else:
# Step 1: Find the nearest keyframe before your start point
ffprobe -select_streams v -show_frames -show_entries frame=pict_type,pts_time \
-of csv input.mp4 | grep "I" | head -20
# Step 2: Use the smart-cut approach
ffmpeg -ss 00:01:28 -i input.mp4 -ss 00:01:30 -to 00:04:00 \
-c:v libx264 -crf 18 -c:a copy output.mp4
The first -ss (before -i) seeks quickly to near the start point, and the second -ss (after -i) provides frame-accurate positioning by decoding from the seek point.

Cutting out a section (like an awkward pause, a mistake, or unwanted content) requires splitting the video into two parts and concatenating them.
# Step 1: Extract the first segment (start to cut point)
ffmpeg -i input.mp4 -ss 00:00:00 -to 00:02:00 -c copy part1.mp4
# Step 2: Extract the second segment (after cut to end)
ffmpeg -i input.mp4 -ss 00:03:30 -c copy part2.mp4
# Step 3: Create a file list
echo "file 'part1.mp4'" > filelist.txt
echo "file 'part2.mp4'" >> filelist.txt
# Step 4: Concatenate
ffmpeg -f concat -safe 0 -i filelist.txt -c copy final.mp4
This removes the section between 2:00 and 3:30, joining the remaining parts seamlessly.
Pro Tip: When concatenating with -c copy, both segments must have identical codecs, resolutions, and frame rates. If they differ, re-encode during concatenation: ffmpeg -f concat -safe 0 -i filelist.txt -c:v libx264 -crf 18 -c:a aac final.mp4
To split a long video into equal parts or at specific timestamps:
# Create three clips from a 10-minute video
ffmpeg -i input.mp4 -ss 00:00:00 -to 00:03:20 -c copy clip1.mp4
ffmpeg -i input.mp4 -ss 00:03:20 -to 00:06:40 -c copy clip2.mp4
ffmpeg -i input.mp4 -ss 00:06:40 -c copy clip3.mp4
# Split into 60-second segments
ffmpeg -i input.mp4 -c copy -map 0 -f segment -segment_time 60 \
-reset_timestamps 1 segment_%03d.mp4
This creates files named segment_000.mp4, segment_001.mp4, and so on, each approximately 60 seconds long. The actual split points align with keyframes, so segment lengths may vary slightly.
Understanding when to use lossless cutting versus re-encoding is critical for balancing speed, quality, and precision.
| Factor | Lossless (Stream Copy) | Re-encoding |
|---|---|---|
| Speed | Near-instant | Minutes to hours |
| Quality | Identical to source | Slight degradation possible |
| Cut Precision | Keyframe-aligned only | Frame-accurate |
| CPU Usage | Minimal | High |
| File Size | Same bitrate as source | Can be optimized |
| Codec Change | Not possible | Any codec available |
For a deeper understanding of how codecs affect quality during re-encoding, read our comparison of H.265 vs H.264 vs AV1.
Different platforms have different requirements for uploaded video. Here are optimized trim-and-export settings for the most common destinations:
YouTube accepts virtually any format and re-encodes everything. Trim at your desired quality level and upload:
ffmpeg -i input.mp4 -ss 00:00:05 -to 00:10:00 \
-c:v libx264 -crf 18 -preset slow \
-c:a aac -b:a 256k output_youtube.mp4
For detailed YouTube settings, see our best video settings for YouTube guide.
Short-form platforms require specific aspect ratios and durations:
# Trim to 30 seconds, resize to 1080x1920 (9:16), optimize for mobile
ffmpeg -i input.mp4 -ss 00:00:10 -t 30 \
-vf "scale=1080:1920:force_original_aspect_ratio=decrease,pad=1080:1920:(ow-iw)/2:(oh-ih)/2" \
-c:v libx264 -crf 23 -preset fast \
-c:a aac -b:a 128k reel.mp4
For platform-specific dimensions and requirements, check our social media video specs guide.
When trimming video for email, size is the priority. Combine trimming with aggressive compression:
ffmpeg -i input.mp4 -ss 00:00:00 -to 00:01:00 \
-c:v libx264 -crf 28 -preset slow -vf scale=1280:720 \
-c:a aac -b:a 96k -movflags +faststart email_clip.mp4
The -movflags +faststart flag moves the metadata to the beginning of the file, which improves playback in email clients that stream the video.

When you need to trim many files to the same specifications, scripting with FFmpeg saves hours.
#!/bin/bash
# Trim the first 5 seconds and last 10 seconds from all MP4 files
mkdir -p trimmed
for file in *.mp4; do
# Get video duration
duration=$(ffprobe -v error -show_entries format=duration \
-of csv=p=0 "$file")
# Calculate end time (duration minus 10 seconds)
end_time=$(echo "$duration - 10" | bc)
# Trim with stream copy
ffmpeg -i "$file" -ss 5 -to "$end_time" -c copy "trimmed/$file"
echo "Trimmed: $file"
done
For more advanced batch workflows, including parallel processing and format conversion, read our batch processing files guide.
Sometimes you want both the trimmed video and the audio track from a specific section. You can do both in a single pass:
# Extract trimmed video and audio simultaneously
ffmpeg -i input.mp4 -ss 00:01:00 -to 00:05:00 \
-map 0:v -c:v copy trimmed_video.mp4 \
-map 0:a -c:a libmp3lame -b:a 320k trimmed_audio.mp3
For more on extracting audio from video, see our guide on how to extract audio from video and explore the Audio Converter for format options.
If your trimmed video has audio that drifts out of sync, the source file likely has a variable frame rate (VFR). Fix this by forcing a constant frame rate during trimming:
ffmpeg -i input.mp4 -ss 00:01:00 -to 00:03:00 \
-c:v libx264 -crf 18 -vsync cfr -r 30 \
-c:a aac -b:a 192k output.mp4
This happens when -ss is placed after -i and the nearest keyframe is before your start point. The frames between the keyframe and your start point get decoded as black. Fix by placing -ss before -i:
# Correct: -ss before -i for fast seeking
ffmpeg -ss 00:01:00 -i input.mp4 -to 00:02:00 -c copy output.mp4
If the output file is corrupted, it usually means the stream copy operation cut in the middle of a GOP (Group of Pictures). Re-encode the problematic section or adjust your cut points to the nearest keyframe.
| Practice | Impact | Difficulty |
|---|---|---|
Use -c copy when possible | Preserves 100% quality | Easy |
| Match CRF to source quality | Minimizes generation loss | Medium |
| Avoid multiple re-encodes | Prevents quality stacking | Easy |
Use -preset slow or slower | Better compression efficiency | Easy (just slower) |
| Verify output with ffprobe | Confirms settings applied | Easy |
The golden rule of trimming: if you do not need frame-accurate cuts, always use lossless stream copy. Save re-encoding for when precision matters or when you need to change the format.
For a comprehensive overview of video compression techniques, check our guide on compressing video without losing quality and use the Video Compressor for a visual compression workflow.
Yes. Using stream copy mode (-c copy in FFmpeg or lossless mode in online tools), you can trim without any quality loss. The only limitation is that cut points must align with keyframes, which may introduce a small offset from your intended time.
Both iOS and Android have built-in video trimming in their gallery apps. For more precise control, use the Video Trimmer in your mobile browser. Upload your clip, set the trim points visually, and download the result.
With stream copy, the file size is proportional to the duration. A 60-second clip from a 5-minute video will be roughly one-fifth the original size. With re-encoding, the file size depends on your quality settings (CRF value, bitrate, resolution).
Absolutely. Combine the -ss/-to flags with codec settings. For example, to trim and convert to a different format, use the Video Converter which supports trimming as part of the conversion workflow.
Trimming video is a task every content creator encounters regularly. Whether you need a quick cut using the Video Trimmer or precise frame-accurate editing with FFmpeg, the techniques in this guide cover every scenario from simple to advanced.
Start with lossless stream copy for speed and quality, and switch to re-encoding only when frame accuracy or format conversion is needed. For batch operations, script your workflow with FFmpeg. For one-off trims, the online trimmer gets the job done in seconds.
Ready to do more with your clips? Explore the Video Converter for format changes, the Video Compressor for size optimization, or the GIF Maker to turn your best moments into shareable animations.
Alex Thompson
Software engineer and content creator focused on web technologies, image optimization, and developer tooling.