- iOS 14–18 added to the version selector.
- Notch and Dynamic Island status bars drawn as vectors; no vendor assets.
- Safe area measured for the island layout (47 pt).
Fake iMessage Generator
Build a blue-bubble thread with the status bar, Dynamic Island and bubble geometry of the iOS version you pick. Light, dark and black layouts, exported as a PNG.
Free download, watermarked
The free tier gives you a downloadable PNG with a small “Scenemock” watermark in the corner. No signup, no upload, no queue. When you need the watermark gone, a 2× export or a batch of images, see pricing.
Fake iMessage Generator mockups render entirely in your browser: the text you type is never sent to a server, never stored and never attached to an account.
How to make one in three steps
Pick the iOS version
The selector switches the status bar between the notch era and the Dynamic Island era, and keeps the header height matched to that version's layout.
Write the messages
One line per message; prefix with “me:” for the blue side. Timestamps and a Delivered or Read label are added automatically.
Export
Download a watermarked PNG straight from the tab. The demo thread here is rendered by the same engine that draws your export.
iOS version matrix: 14 through 18
Picking an iOS version is the difference between a mockup that reads as current and one that reads as a screenshot from a few years ago. The matrix below is what this generator switches between. Geometry is held in points; the canvas itself is exported at a 3× backing size so the file looks sharp on a phone screen.
Status bar: notch versus island
From iOS 14 to iOS 16, the centre of the status bar is a notch that hangs from the top edge. Starting with iOS 17, the notch becomes the Dynamic Island: a pill-shaped cutout that floats below the top edge with a visible gap on every side. The generator draws each shape itself rather than placing a pre-made asset, so there is no vendor artwork in the exported image. The island layout reserves 62 points before the header starts — measured on an iPhone 17 Pro running iOS 26.4, where the status-bar band is 62 points and its content is centred at 31 — and the notch layout keeps the earlier 44-point starting value until it is measured on a device. The island itself is 125.3 × 36.7 points, 14 points below the top edge.
Bubble geometry
Across the five versions, the outgoing bubble is a saturated blue with white text; the incoming bubble is a light grey in light mode and a warm graphite in dark mode. The corner radius does not balloon between versions, but the way a run of messages merges does: consecutive bubbles from the same sender square off the corners that touch and leave only 2 points between them. The header title is the one place we use weight 600 — everything else stays at 400, because bold message text is another easy tell. That single rule is why a two-message reply from the same person looks like one column instead of two floating rectangles.
Type metrics
Message text is set at 17 points with a 22-point line height. Compact line height matters more than font size for the “feels like a phone” test: a bubble that uses 1.5× leading looks like a web card immediately. We use Inter at 400 for body text and 600 only for the header title, then adjust letter spacing slightly to compensate for the font swap.
Timestamps and read state
In these layouts the timestamp sits below the bubble on the same side, and delivery state is a word — Delivered or Read — under the last outgoing bubble in a run. That is different from WhatsApp-style surfaces, which draw ticks inside the bubble; mixing the two is a common tell.
Version reference
| Version | Cutout | Safe top (pt) | Header (pt) | Radius (pt) | Calibration |
|---|---|---|---|---|---|
| iOS 14 | Notch | 44 | 44 | 18 | B |
| iOS 15 | Notch | 44 | 44 | 18 | B |
| iOS 16 | Notch | 44 | 44 | 18 | B |
| iOS 17 | Dynamic Island | 62 | 44 | 18 | A |
| iOS 18 | Dynamic Island | 62 | 44 | 18 | A |
| Parameter | iMessage (iOS 18) |
|---|---|
| Canvas (device px @3×) | 1206 × 2622 |
| Logical size (pt) | 402 × 874 |
| Safe top (pt) | 62 |
| Status bar height (pt) | 62 |
| Status bar | ios-island · signal, wifi, battery |
| Island / cutout (pt) | 125.3 × 36.7 @ top 14 |
| Calibration | A — iPhone 17 Pro simulator, iOS 26.4 (2026-10-22) |
| Header height (pt) | 44 |
| Bubble max width | 72% |
| Bubble padding x / y (pt) | 16 / 10 |
| Bubble radius (pt) | 18 |
| Bubble tail | round |
| Text size / line height (pt) | 17 / 22 |
| Receipts | word: Sent / Delivered / Read |
| Composer placeholder | iMessage |
| Timestamp position | below |
| Outgoing / incoming bubbles (light) | #0B93F6 / #E9E9EB |
| Outgoing / incoming bubbles (dark) | #0B93F6 / #26252A |
| Wallpaper dim (light / dark / black) | 0 / 0.35 / 0.6 |
| Bubble alpha (light / dark / black) | 1 / 0.95 / 0.9 |
Canvas sizes are device pixels at 3×; the iMessage canvas is 1206 × 2622, i.e. 402 × 874 points on the calibrated iPhone 17 Pro (iOS 26.4). All other measurements are device-independent points. The 390 × 844 / 47 pt layout from the first spec draft is kept as an uncalibrated variant and is not the default.
Starting values, pending device calibration: TODO(calibrate).
iOS layout update log
Each entry records what changed on the iOS side and what moved in this generator.
Frequently asked questions
Can I choose the iOS version?
Yes — iOS 14 through iOS 18 are selectable. The version changes the status-bar treatment (notch or Dynamic Island) and the safe-area height; the colour palette stays the same, which is how the simulator behaves too.
Does it support the Dynamic Island?
Yes. iOS 17 and iOS 18 layouts draw the pill-shaped island in the centre of the status bar, and the safe area underneath is sized for it.
Why don't you use the official system font?
We use Inter, an open-licensed typeface, and compensate its metrics with line height and letter spacing instead of embedding a proprietary system font. That keeps the tool redistributable and avoids shipping copyrighted font files.
Are the bubbles rounded the way iMessage draws them?
Outgoing bubbles use the same corner radius across a run, and consecutive messages from one sender merge into a column with squared inner corners, which is the detail that most mockups miss.
Is there an iPhone frame around the image?
No. The export is the screen itself, edge to edge, which is what you need when you paste the image into a design or a story template.