Vertical video ad specifications
Formats, resolutions, durations, and performance targets for vertical video ads that run in feeds, in-stream slots, and takeovers on web and in apps.
Vertical video ads are the main format for full-screen, mobile-first video in your feeds and communities. A 9:16 ad fills the screen, sits naturally in a short-form feed, and renders the same way on Web, Mobile Web, iOS, and Android.
Vertical ads are part of Monetize. For the whole product, see Monetize: what it does and where to start. Follow these specifications so your ads render properly, load fast, and earn without disrupting the viewer.
Where vertical video ads appear
| Format | Where it appears |
|---|---|
| In-feed ads | As video cards within the content feed |
| In-stream ads | Pre-roll, mid-roll, and post-roll within video playback |
| Partnered Takeovers | As a full-screen experience |
To choose which placements carry ads and how often they appear, see Configure vertical video ad placements and frequency. Learn how takeovers fill a placement in How sponsored posts and takeovers work.
Each format shows only where it's switched on in the monetization preset for that placement or embed.
Takeovers come from paid partnerships, and they show only while the preset's Partnered Takeover switch is on. It's on by default.
Video Ads, and the Pre-roll, Mid-roll, and Post-roll breaks, fill only when the preset's ad server supports them.
Video format
| Specification | Recommended value |
|---|---|
| Aspect ratio | 9:16 (vertical) |
| Orientation | Portrait |
| Resolution | 1080×1920 (Full HD) |
| Minimum resolution | 720×1280 |
| File format | MP4 (H.264 codec recommended) |
| File size | Optimized for fast loading, within platform limits |
| Duration | Flexible, commonly 5–30 seconds for ads |
Other aspect ratios can run, but 9:16 gives the best performance and full-screen immersion. Non-vertical ads might show black bars and perform worse than vertical ones.
In your Business Account, the player's shape is set under Settings > Player Controls. There, Video Aspect Ratio defaults to 9:16 (Vertical), and Adaptive is marked coming soon.
We recommend 5–15 seconds because shorter ads get higher engagement. Longer formats work for storytelling.
Ad settings that affect vertical playback
Vertical video behavior depends on the settings in your monetization preset. Learn more about presets.
| Setting | Effect |
|---|---|
| Ad Aspect Ratio set to Match video player ratio | Enforces vertical display (recommended) |
| Ad Aspect Ratio set to Allow all aspect ratios | Non-vertical ads can appear, letterboxed or pillarboxed |
| Mute on Start | Ads autoplay muted in the feed |
| Duration | Shows a countdown timer on video ads |
We recommend setting Ad Aspect Ratio to Match video player ratio because it keeps every ad vertical and full screen.
In-feed and in-stream ads each have their own Ad Aspect Ratio, Mute on Start, and Duration controls.
A new preset starts with Mute on Start on for in-feed ads and off for in-stream ads, and with Duration off for both.
Creative guidelines
In-feed ads
In-feed ads autoplay when they enter the viewport. Mute settings control whether they start with sound.
- Make the ad visually engaging within the first 2–3 seconds.
- Don't depend on sound. Use captions or text overlays.
- Add captions. They aren't mandatory, but we recommend them because they improve engagement and support muted autoplay.
In-stream ads
In-stream ads play as pre-roll, mid-roll, or post-roll.
- Keep load time to 1 second or less.
- Show clear branding early.
- Use a skip-friendly structure.
- Keep a consistent vertical format for full-screen playback.
Platform rendering
Vertical video ads must render consistently on every platform.
| Platform | Rendering behavior |
|---|---|
| Web | HTML5 video with a responsive aspect ratio |
| Mobile Web | Optimized for the mobile viewport |
| iOS | Rendered with AVPlayer |
| Android | Rendered with ExoPlayer |
For how the SDKs fill ad slots in a feed, see How the Genuin SDK places ads in a feed.
Playback behavior
| Rule | Behavior |
|---|---|
| Aspect ratio mismatch | Letterboxing or pillarboxing is applied |
| Autoplay | Starts on viewport entry (in-feed) |
| Full-screen transition | Keeps the vertical ratio |
| Interaction UI | Disabled for programmatic video ads |
| Labeling | An "Ad" badge is displayed |
| Skip option | Available after a defined duration |
| No fill | The slot collapses or fallback content shows |
If an ad fails to load, the SDK tries the next-priority ad type. If nothing fills the slot, it shows house content or collapses the slot. Learn more about house ads.
Performance targets
| Requirement | Target |
|---|---|
| Ad load time (in-feed) | 800 ms or less |
| Pre-roll start time | 1 second or less |
| Layout shift | No visible feed jump (CLS below 0.1) |
| Bundle impact | 50 KB or less added to the SDK |
Examples
- In-feed video ad: A 9:16 ad appears as a card in the feed and autoplays muted. A tap expands it to full screen, in line with the organic content around it.
- Pre-roll vertical ad: The ad plays full screen before the content video, and the viewer can skip it after 5 seconds. Pre-roll gives high visibility and guaranteed impressions.
- Partnered Takeover feed: A partner's vertical videos lead the feed for maximum brand impact, and then your content resumes. With Allow other content to appear after takeover off, only the takeover videos show, in a loop.
To turn on programmatic demand for these formats, see Set up programmatic ads in your feeds. To measure how they perform, see Track programmatic ad performance.

