Android Text Message Generator

Material-style bubbles, RCS read receipts and a status bar that accounts for dual-SIM icons — the details a plain bubble template gets wrong.

This layout uses documented starting measurements. It is not yet matched to a device screenshot the way the iMessage layout is.

Theme
Messages

One message per line. Prefix a line with me: to send it from your side. Up to 50 lines, 2,000 characters each.

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.

Android Text Message 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.

Light
Dark
Black

How to make one in three steps

  1. Pick the Android version

    Android 13, 14 and 15 are selectable. Bubble geometry is shared; what moves between versions is the status-bar icon cluster and the RCS receipt wording.

  2. Write and send

    One line per message, “me:” for the outgoing side. Outgoing messages can carry an RCS read receipt instead of ticks.

  3. Download

    A watermarked PNG is generated in the tab. The same engine renders the three samples below, so you can compare light, dark and black before exporting.

The Material side: accents, receipts and status icons

On Android the chat surface is built from Material components, and that changes three things a generic bubble generator tends to miss: how the accent colour is derived, how read state is communicated, and how crowded the status bar gets on a dual-SIM phone.

Material accents

Material's dynamic colour takes a seed colour from the wallpaper and derives a tonal palette from it. Light mode here uses a pale blue surface (#D3E3FD) with dark navy text (#041E49); dark mode moves the surface to a muted navy (#3D4F6B) with light text (#E3E3E3) so the contrast survives on a near-black page. Incoming bubbles sit on a neutral grey rather than white, which keeps incoming and outgoing distinguishable without a hard border.

RCS receipts

Rich Communication Services messages show read state as a word under the message rather than as tick marks. That matters for layout: ticks sit inside the bubble, so they eat into the text width, while a word sits in the run gap below. Our renderer treats receipts as a meta-layer property: the same message can be rendered with word receipts or with ticks without touching the bubble drawing path.

Status-bar icon cluster

Android status bars carry more icons than the iOS notch layout: a dual-SIM badge, a separate signal cluster per SIM on many devices, Wi-Fi and battery. The generator draws one cluster but reserves room for the badge so the icons do not overlap the notch area. The safe area here is 24 points — tighter than the island layout, which is why Android threads start higher on the screen.

Bubble corners across versions

Between Android 13 and 15 the corner radii used in messaging moved toward larger, softer corners; the current layouts sit at 20 points. The outgoing-tail corner is squared on the side facing the composer, which is a platform convention rather than a decorative choice. We keep the radius in platform data so a future version can change it in one place.

Version differences

VersionRadius (pt)Status icons
Android 1320Signal, Wi-Fi, battery (single SIM)
Android 1420Signal, Wi-Fi, battery, dual-SIM badge
Android 1520Signal, Wi-Fi, battery, dual-SIM badge

Measured values

Type is 16 points on a 21-point line, the header is 64points tall, and bubbles take up to 75% of the screen width.

Google Messages-style layout measurements
ParameterGoogle Messages (Android)
Canvas (device px @3×)1080 × 2400
Logical size (pt)360 × 800
Safe top (pt)24
Status bar height (pt)24
Status barandroid · dual-sim, signal, wifi, battery
Island / cutout (pt)—
CalibrationB — document values, pending device pass
Header height (pt)64
Bubble max width75%
Bubble padding x / y (pt)20 / 12
Bubble radius (pt)20
Bubble tailround
Text size / line height (pt)16 / 21
Receiptsword: Sending / Sent / Delivered / Read
Composer placeholderText message
Timestamp positioninside
Outgoing / incoming bubbles (light)#D3E3FD / #F1F3F4
Outgoing / incoming bubbles (dark)#3D4F6B / #2D2F31
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).

Android layout update log

Android releases that changed the messaging surface and what moved here.

  • Android 13, 14 and 15 added to the version selector.
  • RCS read receipts modelled as word receipts under the bubble.
  • Dual-SIM badge added to the status-bar icon cluster.

Frequently asked questions

Does it support RCS read receipts?

Yes. The outgoing message can show an RCS read receipt, which is text-based rather than the tick marks used on green-bubble surfaces. Receipt wording follows the message state.

Can I adjust the bubble corners?

Not directly yet. Corner radius is a platform parameter set to 20 points for this family, and outgoing bubbles square the corner that faces the composer, which is how the platform draws them.

Is it free?

Yes. Watermarked PNG downloads are free with no signup; removing the watermark and higher-resolution exports are paid features.

Why do the bubbles look different in dark mode?

The dark theme swaps the pale blue and light grey for muted navy and graphite, flips the status-bar ink to white and dims the page background. Text ink is chosen for contrast, not simply inverted.

Can I show dual-SIM icons?

The status-bar icon set includes a dual-SIM badge for the Android 14 and 15 layouts. You can leave it out for single-SIM mockups.