Push Notification Character Limits - iOS & Android Guide
Push notifications compete for attention in a crowded notification tray. Understanding platform-specific character limits and designing text for maximum impact within those constraints is essential for engagement. These limits stem not only from UI design choices but also from the technical constraints of APNs (Apple Push Notification service) and FCM (Firebase Cloud Messaging) payload sizes.
APNs and FCM Payload Limits - The Technical Root Cause
The fundamental reason push notification text is limited comes down to payload size caps. APNs allows a maximum payload of 4,096 bytes (4 KB). FCM notification messages share the same 4,096-byte ceiling, while data messages are capped at 4,000 bytes.
The payload carries more than just the title and body. Sound settings, badge counts, and custom data (deep-link URLs, campaign IDs, etc.) all consume space within the same JSON-encoded envelope. Because UTF-8 encodes multibyte characters at 2–4 bytes each, the effective character count varies by language. After subtracting metadata and custom fields, the actual text budget is typically less than half the raw payload limit.
Platform Character Limits
Beyond the payload ceiling, each OS imposes its own display constraints. The table below summarizes visible character limits across major platforms.
| Platform | Title Limit | Body Limit | Notes |
|---|---|---|---|
| iOS (Lock Screen) | ~50 chars | ~178 chars | ~4 lines before truncation |
| iOS (Banner) | ~50 chars | ~80 chars | 2 lines, disappears quickly |
| iOS (Notification Center) | ~50 chars | ~178 chars | Long-press to expand full text |
| Android (Collapsed) | ~65 chars | ~45 chars | Single line |
| Android (Expanded) | ~65 chars | ~240 chars | BigTextStyle shows full text |
| Web Push (Chrome) | ~50 chars | ~120 chars | Varies by OS |
| Web Push (Firefox) | ~50 chars | ~140 chars | Notification center |
| macOS | ~40 chars | ~130 chars | Full text in Notification Center |
| Apple Watch | ~20 chars | ~60 chars | Short Look disappears in seconds |
| Wear OS | ~30 chars | ~80 chars | Scrollable for full text |
A key detail: even on the same OS, display context matters enormously. An iOS banner shows roughly 80 characters of body text before vanishing, while the lock screen renders about 178 characters across four lines. The Notification Center lets users long-press to reveal the full payload text.
Character Count vs. Tap-Through Rate - Industry Benchmarks
Cross-industry analysis shows that titles of 10–25 characters and bodies of 40–60 characters tend to produce the highest tap-through rates. However, the sweet spot varies by vertical. For a deeper understanding of mobile engagement patterns, search gravure photo books on Amazon provide useful frameworks.
| Industry | Recommended Title Length | Recommended Body Length | Trend |
|---|---|---|---|
| E-commerce / Retail | 15–20 chars | 40–50 chars | Discount percentages and deadlines drive taps |
| News / Media | 20–30 chars | 50–70 chars | Breaking-news style headlines perform best |
| Fintech / Banking | 10–15 chars | 30–40 chars | Shorter transactional alerts see highest rates |
| Gaming | 15–25 chars | 40–60 chars | Reward and event announcements are effective |
| Food Delivery | 10–20 chars | 30–50 chars | Time-of-day targeting is critical |
E-commerce apps benefit from short, urgent titles like "Flash sale: 50% off today." News apps can afford slightly longer titles because users expect headline-level information density. Fintech notifications like "Deposit: $500.00" perform best when stripped of all decoration - extra wording actually hurts tap rates in this vertical.
As with business email, brevity is essential, but push notifications demand even more compression. With collapsed views showing only 1–2 lines, the first 40 characters of the body must carry the core message.
Why Character Limits Differ Between Platforms
iOS banner notifications are limited to two lines by design. Apple's Human Interface Guidelines emphasize that notifications should be understood at a glance, so the display area is intentionally kept small to minimize interruption. Starting with iOS 16, lock screen notifications were moved to the bottom of the screen to prioritize wallpaper visibility, further constraining the display area.
Android's expandable view (up to 240 characters) follows Google's Material Design principle of "progressive disclosure." The collapsed state shows a single-line summary; if the user is interested, they can expand to read the full message. Since Android 13, notification permission has shifted to an opt-in model requiring explicit user consent via the POST_NOTIFICATIONS permission - mirroring iOS behavior. This change has lowered Android opt-in rates, making it even more important to deliver high-quality notifications to the users who do grant permission.
Rich Notification Character Limits and Design Considerations
Rich notifications - using iOS Notification Content Extensions and Android's BigPictureStyle / BigTextStyle - support images, action buttons, and carousels. However, they introduce text constraints that differ from plain-text notifications.
- Image attachments shrink the text area: On iOS, attaching an image reduces the visible body text by roughly 30%. Lock screen body display drops to about 120 characters, so text must be even shorter when images are present
- Action button label limits: iOS supports up to 4 action buttons and Android up to 3, but button labels are capped at roughly 20 characters on iOS and 15 on Android. Labels longer than that get truncated, so keep them to 5–8 characters (e.g., "Buy Now," "View Details")
- Payload impact: Image URLs and action button definitions consume payload space, reducing the budget available for text. Images are typically delivered via URL reference (using APNs mutable-content + Notification Service Extension) rather than embedded in the payload itself
Wearable Display Constraints - The Overlooked Edge Case
Apple Watch and Wear OS devices impose even tighter character limits than smartphones. On Apple Watch, the Short Look (displayed for a few seconds upon receiving a notification) shows only the app name and a portion of the title - the body is invisible until the user transitions to the Long Look. Even in Long Look, the small screen causes line wrapping at around 60 characters.
On Wear OS, notifications appear as cards that users can scroll through, but the initial view shows only the title and roughly the first 30 characters of the body. Since wearable users often check notifications while moving or exercising, the title alone must convey the essential information. For wearable-optimized notifications, keep titles under 20 characters and place the core message within the first 30 characters of the body.
Web Push Notification Constraints
Web push notifications vary significantly across browser and OS combinations. Chrome, Firefox, and Safari each render different character counts and visual styles, so designing for the most restrictive environment is the safest approach.
Safari added Web Push support starting with macOS Ventura, but on iOS, Web Push is only available from iOS 16.4 onward and only for PWAs (apps added to the home screen). Standard browser tabs cannot send Web Push on iOS, which limits reach to iOS users.
As a general rule, titles under 30 characters and bodies under 80 characters will display without truncation across major browser-OS combinations. Adding an icon or badge image improves visibility and boosts click-through rates compared to text-only notifications.
A/B Test Design for Push Notifications
A/B testing push notifications requires a different approach than email A/B tests. Notifications cannot be recalled once sent, and user reactions concentrate within minutes, so test design must account for these constraints.
- Isolate one variable per test: If you are testing title length, keep the body, send time, and image constant. Changing multiple elements simultaneously makes it impossible to attribute results to any single factor
- Ensure adequate sample size: Each variant needs at least 1,000–2,000 users for statistically significant results. Apps with smaller user bases should accumulate data across multiple test cycles
- Control for time of day: Send both variants at the same time. Morning and evening tap rates differ dramatically, so staggered sends will skew results
- Track beyond tap rate: Measure notification-driven conversion rate, in-app session duration, and opt-out rate alongside tap rate. A high tap rate paired with rising opt-outs signals long-term damage
Personalized Notification Character Strategy
Personalized notifications insert dynamic data - user names, product names, or account balances - into templates, which means the fixed-text portion must be sized to accommodate variable-length insertions. For example, a template like "{username}, you left items in your cart" will vary in total length depending on the username.
English usernames average 6–12 characters, but can exceed 20. When designing templates, keep the fixed portion under 25 characters and reserve at least 15 characters for the dynamic segment. This ensures the title remains visible without truncation even for longer names.
The impact of personalization is substantial: notifications that include the user's name see tap-through rates roughly 2–4 times higher than generic broadcasts. Recommendation-based notifications driven by purchase or browsing history can achieve conversion rates approximately 3 times higher than bulk sends.
Preventing Notification Fatigue - Frequency and Character Count
Sending too many notifications is one of the fastest ways to lose users. Research indicates that roughly 40% of users who receive three or more notifications in a single day will disable them entirely. For practical guidance on notification strategy, explore netorare fiction on Amazon cover frequency optimization in detail.
Frequency and character count are correlated. When sending frequently (once a day or more), keep each notification ultra-short (titles under 15 characters, bodies under 30) to minimize cognitive load. When sending less often (1–2 times per week), slightly longer bodies (60–80 characters) with richer detail are acceptable without triggering fatigue.
Notification type also matters. Transactional notifications (order confirmations, shipping updates) are exempt from frequency caps because users expect them in real time. Promotional notifications, however, should be capped at 2–5 per week for most apps. Implementing a per-user frequency cap (a maximum number of sends within a rolling window) provides a systematic safeguard against notification fatigue.
iOS vs. Android Permission Rate Differences
Roughly 50% of iOS users grant push notification permission, whereas Android enabled notifications by default for all apps prior to Android 13. Since Android 13, the POST_NOTIFICATIONS permission requires explicit opt-in, and Android opt-in rates have begun declining as a result.
For iOS apps, the timing and wording of the permission request are critical. Rather than prompting on first launch, the "pre-permission" pattern - asking after the user has experienced value (e.g., after a first purchase or adding a favorite) - is far more effective. Showing an in-app dialog that explains the benefits of notifications before triggering the OS permission prompt has been reported to improve opt-in rates by 20–30%.
Common Mistakes
- Sending notifications late at night: Notifications between 10 PM and 7 AM don't just disturb sleep; they directly lead to notification opt-outs and app uninstalls. Timezone-aware scheduling is essential. For globally distributed apps, this means detecting each user's local timezone and scheduling delivery accordingly
- Vague titles like "Update" or "Important": Generic titles get dismissed as spam. "50% off until 6 PM today" with a specific number and deadline dramatically outperforms vague alternatives
- Blasting the same notification to all users: Unsegmented bulk sends are noise for irrelevant users. Segmenting by user attributes (purchase history, app usage frequency, region) and tailoring notification copy to each segment improves both tap rates and conversion rates
- Missing deep links: Opening the app's home screen after a notification tap is a UX failure. Link directly to the relevant content - a product page, a campaign landing page, or an order status screen - to significantly improve conversion rates
Pro Notification Techniques
- Use rich notifications for visual impact: Image-bearing notifications are estimated to boost engagement by 25% or more compared to text-only versions. Always design a text-only fallback in case the image fails to load
- Optimize send time per user: Rather than sending to all users at the same time, infer each user's most active hours from their app usage patterns and schedule delivery individually. E-commerce apps tend to see the highest tap-through rates during lunch breaks (12–1 PM) and evening hours (7–9 PM), but individual variation is significant, making per-user optimization the ideal approach
- Leverage notification channels for priority control: Android 8.0+ notification channels let you separate notification types (transactional, promotional, news) into distinct channels. Users can toggle channels independently, preventing important transactional alerts from being silenced alongside promotional messages
Conclusion
Push notification character limits are shaped by both APNs/FCM payload caps and each OS's UI design philosophy. Display constraints vary not only between iOS and Android but also across lock screens, banners, notification centers, and wearable devices. For cross-platform safety, keep titles under 20 characters and bodies under 40. Optimize character counts by industry and user segment, run A/B tests for continuous improvement, and leverage personalization to maximize engagement. Use Character Counter to verify your notification text fits before sending.