How to Choose Story Covers in Telegram: Video Frame Selection, Profile Highlights & Custom Thumbnails
Never settle for an awkward mid-motion freeze frame. Learn how to pinpoint the exact keyframe of your video stories to serve as their thumbnail cover—curating an immaculate visual aesthetic for your profile highlights and story archive.
How Story Cover Timestamps Are Handled
A technical overview of the MTProto Layer 174 schema that manages story cover frame extraction.
// Input Story with Custom Video Cover Keyframe
inputMediaStory#89fdd778 flags:#
user_id:InputUser
id:int
cover_frame_timestamp:flags.0?double = InputMedia;
// Profile Pinned Stories Vector Update
stories.updatePinnedStories#a7ced132 flags:#
peer:InputPeer
stories:Vector<int> = Vector<int>;
// Server Extracts & Caches 720p WebP Thumbnail at Keyframe Offset
ThumbnailGenerated:
- Source: inputMediaStory.media (MP4)
- Timestamp: cover_frame_timestamp (e.g. 3.450s)
- Output: 720x1280 Progressive WebP cover asset
When publishing a video story, the client passes cover_frame_timestamp:double (e.g. 3.45 seconds). The Telegram media processing worker extracts an uncompressed frame at that exact presentation timestamp (PTS), renders any attached sticker overlays, and generates an optimized progressive WebP thumbnail cached at CDN edges for instant profile loading.
Slide across the video timeline to choose the best frame and see how it looks pinned on your profile showcase.
How to Select a Video Story Cover & Pin to Profile
Follow these simple steps on iOS or Android.
Story Covers FAQ
Answers regarding changing covers after publishing and profile grid limits.
•••) on any of your active or archived stories, select Edit Story, tap the Cover selector, choose a new frame, and save. The thumbnail updates instantly on the CDN.