We use self-hosted rrweb to replay visits to our homepage and campaign page. This helps us understand broken layouts and confusing interactions. It records page layout, taps, scrolling, viewport size, and timing—not your camera, microphone, other tabs, or native iPhone app.
Ordinary page text and form fields are visible in replays. Password fields, payment fields, and form content explicitly marked for masking are protected. Support chat and embedded frames are excluded. The recorded marketing pages do not ask for account identities, email addresses, precise location, religious preferences, or health information; we do not link replays to app accounts. We keep approved campaign labels and numeric campaign/ad identifiers, plus named website interactions such as download clicks and scroll milestones. We store a random anonymous browser identifier and first-visit/latest-campaign attribution in this browser for up to 180 days, and a visit identifier for activity in the same tab until 30 minutes idle. This connects website recordings across page loads, not to an app account. A random page identifier also accompanies campaign-page Google Analytics events. Raw URL queries and referrers are not retained as replay metadata.
Recordings are stored in our Google Firebase project and available only to authorized administrators. We attempt to record every eligible page visit, without a daily quota or a session-duration cutoff. Opt-outs, browser privacy signals, unavailable storage, and upload failures can prevent recording. Recordings are retained until we manually delete them. They are not a complete count of visitors.
Use Recording settings on the homepage or Analytics settings on the campaign page to turn collection off. Existing declines, Global Privacy Control, and Do Not Track are honored. This browser choice also applies to campaign analytics. Turning collection off stops future recording and clears the local attribution identifiers, but does not delete data already uploaded. Clearing browser storage resets the choice.
To reduce automated abuse, we reject known crawler user agents and briefly use IP addresses in server memory to throttle request bursts; these addresses are not saved with recordings. Our hosting and cloud infrastructure may keep standard request logs, including IP addresses, under their separate retention settings. These logs are not included in the replay dashboard.