What is supported offline
Scope
Kiosks using the Merlin Cloud Package and Merlin Cloud Lockdown are officially supported for offline operation.
Mobile flows launched via QR are PWAs that can work offline, but Merlin Cloud only verifies and guarantees offline support for kiosks.
Supported platforms
Official: Android 8.0 or later.
Bespoke: Other operating systems can be supported on a project basis.
Hardware guidance
Minimum 8 GB RAM for smooth, no lag UX.
Minimum 64 GB storage.
Peripherals such as scanners and printers are optional and can be supported.
How campaign content works offline
When a campaign release goes live, the device downloads data, translations and assets.
A PWA service worker pre-caches the campaign so the kiosk can run without internet.
The kiosk keeps showing the last cached version while offline.
When the device is online and detects a new scheduled release, it fetches and applies it automatically.
Asset policy and cache invalidation
Local images are cached indefinitely by the service worker and update only when the app updates.
Cache invalidation happens when the device is online at any of these moments:
Session refresh every 10–15 minutes.
Idle for 60 seconds.
Service worker update when a new build is deployed.
Compress media before uploading to the CMS. Files over 1 MB can slow updates and may fail on poor connections.
Large media can be cached locally. Use the CMS previews to verify asset load times.
Syncing and reload behavior
Automatic sync on reconnection. As soon as internet access is restored, queued analytics upload in bulk.
Experience reload every 15 minutes. The kiosk reloads itself every 15 minutes to retrieve the latest code and files.
Heartbeat every 30 seconds. Each kiosk sends a heartbeat to mc-api every 30 seconds so device health is accurate in the dashboard.
Keep devices online daily so analytics stay fresh and campaign updates apply promptly.
Offline analytics: what we capture and how we store it
Captured events
Page views
Clicks and button taps
Dwell time and session metadata
Conversions
Watch time
Products viewed
Error logs
Timestamps
Storage and reliability
Offline interactions are stored in localStorage on the device.
Each session has a UUID v4. If duplicates are detected, the most recent session data is kept.
When the device goes online, offline data is uploaded.
An interaction is deleted from localStorage only after a successful insertion into the database.
Privacy
Sensitive data is not stored locally. If a data point could be sensitive, it is redacted before storage.
Retention and limits
Default: up to 30 days of offline analytics and up to 1,000 sessions stored per device.
Enterprise option: up to 180 days and 100,000 sessions on request.
Security
All data in transit uses HTTPS with TLS 1.2 or 1.3 and industry standard certificates.
At-rest encryption for local caches is available for enterprise deployments.
End to end SSL certificates can be provisioned to a device for enterprise clients.
Fallback screen
If a device boots with no network and no cached content, it shows a branded No internet available splash with the Merlin Cloud logo.
Lockdown mode tip
To leave Lockdown mode on a kiosk, tap the screen 7 times in the bottom right corner.
Network notes
Recommended connection: 10 Mbps or higher.
Video heavy deployments: 30 Mbps or higher.
Minimum to function: 2 Mbps. Use only if there is no other option.
4G SIMs are supported for difficult sites. Consistent connectivity is more important than peak speed.
Keep kiosks plugged in. Devices we sell support 8+ hours of battery life for power cuts.
Troubleshooting offline content and sync
Check Last seen and heartbeat history in the dashboard to confirm the device is online.
Verify connectivity:
Confirm storage headroom so service worker caching can complete.
Review campaign package size and recompress large assets, especially files over 1 MB.
Ensure the device is included in the latest scheduled release and allow the 15 minute reload or a session refresh to pull updates.
Power cycle the kiosk to restart the app and service worker cleanly.
If issues persist, contact support to clear the device cache remotely and re-seed the campaign.
Roles and controls that affect offline behavior
Admins and Managers can control devices and use device actions from the dashboard.
Viewers can see analytics and status but cannot control devices.
To pause new content syncing to a device, do not include it in the next campaign release.
Cache clearing can be requested through support.


