Flow Builder Error States
Catch broken Flow Builder steps before subscribers do.
Everything we ship across Pages, Flows, Experiments, Campaigns, Insights, and the platform underneath.
Catch broken Flow Builder steps before subscribers do.
Flow Builder now surfaces error states when an action has no next step or when a page has empty or unattached actions. Teams see exactly where a flow is incomplete before publishing, so subscribers never land on a dead end.
Get warned before changing a page used inside an active flow.
The dashboard now warns teams before editing a page that is attached to a flow. Edits to a flow page can ripple across the subscriber journey, so Page Builder confirms the impact before letting the change through.
Configure Nami Insights environment settings from a streamlined gear menu.
The environment selector in Nami Insights has been replaced with a gear settings menu. The new control surfaces configuration options more cleanly, reducing visual clutter and making it faster to switch between environments without navigating away from your data.
The Integrations page has been redesigned for faster setup and clearer status visibility.
The Integrations page in the Nami dashboard has been refreshed with a new layout. Teams can now see the status of each integration at a glance, navigate to configuration faster, and complete setup with fewer clicks — a cleaner experience for connecting the tools your subscription stack depends on.
Edit and archive assets faster from the redesigned list
The assets list now uses icon-based edit and archive actions with consistent column widths. Archive is disabled automatically when an asset is still in use, so teams can clean up the library without worrying about breaking a live page.
A file-explorer experience for managing assets at scale
Assets have a new home: a filterable table and grid view with click-to-edit modal overlays, plus a full-height sidebar layout that other dashboard pages will adopt next. Built for teams managing hundreds of assets across dozens of experiences. Find, edit, and organize without losing your place.
See every page using a brand palette before you edit it
Brand palettes now show a usage list inside the palette detail view, surfacing every page that references a palette in one place. Teams can gauge the impact of a color change before making it, instead of discovering it live.
A cleaner, more consistent data schema table
The data schema table now matches the assets table layout, with avatar-based Created and Updated columns and a dedicated Actions column with quick edit. One less inconsistency between dashboard surfaces, one less thing to re-learn.
Give brand designers focused access with the new Designer role
A new Designer role in the dashboard gives team members access to fonts, color palettes, and design assets without exposing analytics, campaigns, or billing. Brand contributors can manage visual identity while product and growth teams keep control of the rest.
Flow list columns now match the rest of the dashboard
The flow list Created and Updated columns have been consolidated to show author avatar and date in a single cell, matching the assets table. Teams scanning across surfaces now see the same pattern everywhere.
Detach a text asset from a page with one click
Hovering over an asset reference in Page Builder’s text input now reveals an unlink icon. Click it to replace the reference with its current text value, useful when a page needs to diverge from a shared asset without losing the copy. The action is undoable.
Inspect every previous version of a data schema in history
The data schema history tab now shows the full JSON of each previous version alongside the changelog message. Audit how a schema has changed over time without restoring or rebuilding, and see exactly what was different at each step.
Pricing displays now reflect Android's latest one-time purchase format
Adapted to Android’s updated one-time purchase pricing API. Pricing on subscriber-facing pages stays accurate and current with the latest Google Play format — no manual adjustments required when Android changes how prices are structured.
Display content in a grid format alongside your existing feeds
Pages now support a content grid as a layout variant of the content feed. Teams can choose between feed and grid formats to match the visual style of each experience — giving more control over how content appears to subscribers without building from scratch.
Manage structured data assets directly in the dashboard
A new assets section in the data schema interface gives teams a dedicated space to manage structured data assets. View, organize, and reference data assets without leaving the dashboard.
Pricing data in the dashboard now loads significantly faster
Optimized the pricing data endpoint that powers SKU pricing displays in the dashboard. Load times that previously took several seconds are now much faster, making it quicker to review and manage subscription pricing.
Launch experiences without an in-app purchase option
Launch context now supports a noInAppPurchase option. Teams can present subscriber experiences — announcements, content unlocks, upsell screens — without surfacing an IAP prompt when one is not needed, giving product teams finer control over when the purchase flow appears.
Content feed setup now starts with a ready-to-use component
When adding content feed capability to a page, a starter component is now included automatically. One less manual step in the build process — teams go straight to customizing instead of starting from an empty container.
A single home for branded fonts, colors, and design tokens
A new Brand Styles page in the dashboard brings fonts, color palettes, and design assets into one place. Teams can manage the visual system that underpins every page and flow from one view — no more hunting across surfaces to update a typography rule or swap a palette.
Sample any color from the canvas with the new eyedropper tool
Page Builder color picker now includes an eyedropper tool. Sample any color from the canvas and apply it directly — faster than switching to a design tool to grab a hex code.
Customize screenreader text on individual TV paywall elements
Page Builder now lets teams manually add screenreader text to individual TV paywall elements beyond the auto-generated defaults. Fine-tune accessibility for specific components when the automatic text doesn’t capture the right context.
Control which offers subscribers see based on entry point
Apple and Android SDKs now support sending the current product group dynamically via launch context. Teams can control which offers a subscriber sees based on where they enter the experience — different entry points, different product sets, same flow.
Route web subscribers through different paths based on placement
Web now supports flow branching by placement label. The same conditional journey logic that works on mobile is available for web subscriber experiences — route subscribers down different paths based on where they entered the flow.
Pass subscriber data between flow steps and external forms
Web flows now support handoff with form IDs. Teams can pass subscriber data between flow steps and external forms — useful for capturing additional information mid-journey without breaking the flow experience.
Present subscriber experiences as half sheets on mobile
Apple and Android now support half sheet page presentation with a grow transition style. Subscriber experiences can slide up from the bottom of the screen instead of taking over full screen — giving teams a lighter, less intrusive way to present offers, upgrade prompts, or onboarding steps.
Subscribers see polished loading indicators while prices load
Pages now show a loading indicator while prices or offers are being fetched. Subscribers see a polished transition instead of blank space — a small detail that makes the experience feel designed, not assembled.
Guide CTV subscribers through multi-step flows with progress indicators
New progress bar and loading bar components for Roku. Subscribers see visual progress during multi-step CTV flows — onboarding sequences, plan selection, and account setup all feel more guided and polished.
Add animated countdown timers to create urgency
A new Countdown Timer component is available across platforms. Create urgency on limited-time offers with an animated countdown that automatically hides when the timer completes. Configurable duration, styling, and behavior.
Target specific components by ID for automated testing
Teams running automated QA can target specific components by ID with a new testId property — making end-to-end testing of subscriber experiences more reliable and less dependent on visual selectors.
Style custom navigation indicators on web carousels
Web carousels now support custom indicators — dots, arrows, or other navigation styles that match the look of each experience. Teams control how subscribers navigate through carousel content instead of being locked into a default style.
Pause subscriber flows programmatically on web
A new static pause method lets teams programmatically pause subscriber flows on web. Useful when a flow should wait for an external event or user action before continuing — gives developers precise control over flow timing without rebuilding the flow itself.
Toggle switches in web experiences now support a disabled state
Web-rendered toggle switches can now display in a disabled state. Teams can use this to show subscribers options that exist but are not currently available — providing visual context instead of hiding controls entirely.
Show progress on multi-step web flows
A new Loading Bar component is available for web. Subscribers see visual progress during multi-step flows — onboarding sequences, plan selection, and checkout all feel more guided and polished, matching what is already available on Roku.
Catch lost connections in the dashboard with a clear prompt
The dashboard now detects when a user loses their internet connection and surfaces an offline popup. Teams working in Page Builder and Flow Builder get an explicit warning before attempting to save work against a dropped connection.
Display dynamic pricing and product details with Smart Text variables
Smart Text now supports SKU-based variables across pages, including new options for monthly, yearly, mo, and yr. Teams can dynamically display pricing, trial lengths, billing cadence, and product details using variables that resolve at render time — no hardcoded values, no manual updates when pricing changes.
Insert SKU reference ID Smart Text directly into text inputs
Page Builder now supports inserting SKU reference ID Smart Text variables inside Text Input fields. Teams can reference dynamic product values wherever copy lives — not just standalone text components — for more flexible paywall and form design.
Build personalized subscriber journeys with conditional branching
Flow Builder now supports full conditional branching, so teams can create subscriber journeys that adapt based on platform, region, segment, or behavior. Design branching paths visually — no engineering required — and test which journey structures drive the strongest conversion.
Manage and reuse creative assets from a single library
A centralized asset library for images, icons, and media used across pages and flows. Upload once, use everywhere. Update an asset in the library and it propagates across every page that references it — no more hunting through individual designs to swap a logo or hero image.
Sync promotional offers from Apple and Google automatically
Nami now syncs offers and pricing directly from the Apple App Store and Google Play. Promotional offers, introductory pricing, and subscription tiers stay current without manual updates — so the prices subscribers see always match what the app stores are charging.
See conversion data directly inside your subscriber flows
Analytics Mode overlays real performance data onto your flow canvas. See conversion rates, drop-off points, and experiment results at each step without switching between tools. Spot underperforming journey stages and iterate in the same interface where you build.
No updates for that capability in the visible window. Try widening the filters.