You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mobile SR inaccuracies on .startRecording and Marissa support FAQs (#1895)
* Marissa changes for support faqs
* Correcting inaccurate info on .startRecording on mobile
* Merging two plan tables into one
* Adding more context on growth plan
* Adding more info on CDP compatibility for mobile SR
* Wording on overage rates
* Update session-replay-web.mdx
* Update session-replay-android.mdx
* Update session-replay-ios.mdx
* Update session-replay-android.mdx
Copy file name to clipboardExpand all lines: pages/docs/session-replay.mdx
+21-18Lines changed: 21 additions & 18 deletions
Original file line number
Diff line number
Diff line change
@@ -8,26 +8,17 @@ While analyzing customer journeys using Mixpanel's analytics, you can identify *
8
8
9
9
## Plan Availability
10
10
11
-
Session Replay is available for customers on Free, Growth, and Enterprise plans:
11
+
Session Replay is available for customers on Free, Growth, and Enterprise plans. Customers must be on the latest Mixpanel plans to access free replays.
| Enterprise | 20k free Replays per month ([additional Replays available as an add-on](https://mixpanel.com/pricing/))|
18
-
19
-
Customers must be on the latest Mixpanel plans to access free replays.
20
-
21
-
- For customers on an existing **Free** plan:
22
-
- Switch your plan to the latest Free plan, which includes 1M monthly events and 10k session replays. You can make this switch directly from the [pricing page](https://mixpanel.com/pricing/).
23
-
- For customers on an existing **Growth** plan:
24
-
- You're on the latest plan if you purchased or edited your plan after April 2024. If you are not sure if your organization is using the latest plan, you confirm on the pricing page - if you see "Make the Switch" on the Growth plan, then you are on an older version.
25
-
- You can make the switch to our latest plan directly from the [pricing page](https://mixpanel.com/pricing/).
26
-
- Enterprise customers should contact their Account Manager to determine their plan status.
| Free | 10k free Replays per month | Switch to the latest Free plan (includes 1M monthly events + 10k replays) via the [pricing page](https://mixpanel.com/pricing/). |
16
+
| Growth | 20k free Replays per month | You're on the latest plan if you purchased or edited your plan after April 2024. If you are not sure if your organization is using the latest plan, you confirm on our [pricing page](https://mixpanel.com/pricing/) - if you see "Make the Switch" on the Growth plan, then you are on an older version. |
17
+
| Enterprise | 20k free Replays per month | Contact your Account Manager to determine your plan status. |
27
18
28
19
## Implementation
29
20
30
-
Session Replay is supported on three platforms: Web, iOS, and Android. You can use Session Replay with CDPs (e.g., Segment and mParticle) through the Web platform.
21
+
Session Replay is supported on three platforms: Web, iOS, and Android. You can use Session Replay with CDPs (e.g., Segment and mParticle) on both Web and Mobile.
31
22
32
23
See our developer guides on implementing Session Replay for these platforms below:
33
24
@@ -94,7 +85,7 @@ The Replay Feed on the left of the player also allows you to:
94
85
## FAQ
95
86
96
87
#### What happens when I reach my Session Replay limit?
97
-
Customers who have purchased the Session Replay add-on will be billed for replays ingested beyond the purchased amount at the ala carte rate. Customers using Session Replay without purchasing the add-on (e.g., those using complimentary replays included with the Free, Growth, or Enterprise plans) will be unable to view replays once they reach the data allowance, unless they upgrade. We will send email notifications to [organization Owners and Billing Admins](/docs/orgs-and-projects/roles-and-permissions#organization-roles) as your projects approaches the data allowance of your subscription plan.
88
+
Customers who have purchased the Session Replay add-on will be billed for replays ingested beyond the purchased amount at your per-unit rate. Customers using Session Replay without purchasing the add-on (e.g., those using complimentary replays included with the Free, Growth, or Enterprise plans) will be unable to view replays once they reach the data allowance, unless they upgrade. We will send email notifications to [organization Owners and Billing Admins](/docs/orgs-and-projects/roles-and-permissions#organization-roles) as your projects approaches the data allowance of your subscription plan.
98
89
99
90
Mixpanel reserves the right to stop ingesting replays once a customer collects replays beyond their purchased/allocated amount. To minimize disruption to your team, we recommend monitoring your data usage in the organization settings and working with your Account Manager (if applicable) to ensure you have the right plan for your needs.
100
91
@@ -122,7 +113,19 @@ You will not see the "View Replays" button if your organization is on an older p
122
113
123
114
#### Can I use Session Replay with a CDP?
124
115
125
-
You can use Session Replay with CDPs (e.g., Segment and mParticle) for the web platform. Your app must include the Mixpanel Javascript SDK, with Session Replay enabled. Learn more in the developer guide [here](/docs/session-replay/implement-session-replay/session-replay-web#session-replay-with-a-cdp).
116
+
You can use Session Replay with CDPs (e.g., Segment and mParticle) on both web and mobile.
117
+
118
+
| Platform | Guidance |
119
+
| --- | --- |
120
+
| Web | Your app must include the Mixpanel Javascript SDK, with Session Replay enabled. Learn more in the developer guide [here](/docs/session-replay/implement-session-replay/session-replay-web#session-replay-with-a-cdp). |
121
+
| iOS | Works with CDPs, but you must install the Mixpanel Session Replay SDK in your app. Read more in our [iOS implementation guide](/docs/session-replay/implement-session-replay/session-replay-ios). |
122
+
| Android | Works with CDPs, but you must install the Mixpanel Session Replay SDK in your app. Read more in our [Android implementation guide](/docs/session-replay/implement-session-replay/session-replay-android). |
123
+
124
+
### How does Session Replay work differently on web versus mobile?
125
+
126
+
Session Replay works differently on web versus mobile in Mixpanel:
127
+
-**Web**: Captures DOM changes to reconstruct user interactions, tracking elements, clicks, and navigation. This provides an event-based replay of user activity.
128
+
-**Mobile**: Captures actual screen pixels since native apps don't use a DOM. This visual approach records all on-screen activity as it appears to users, including scrolls, carousels, and auto-scrolling elements.
126
129
127
130
#### How can I estimate how many Replays I will generate?
Copy file name to clipboardExpand all lines: pages/docs/session-replay/heatmaps.mdx
+5-3Lines changed: 5 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -1,9 +1,9 @@
1
1
import { Callout } from'nextra/components'
2
2
3
-
# Heatmaps (Beta)
3
+
# Heatmaps for Web (Beta)
4
4
5
5
<Callouttype="info">
6
-
Heatmaps are currently in private, closed beta. For early access, please contact your Account Manager.
6
+
Heatmaps for Web are currently in private, closed beta. For early access, please contact your Account Manager.
7
7
</Callout>
8
8
9
9
## Overview
@@ -37,10 +37,12 @@ Heatmaps only capture data during sessions with recorded replays. If a page has
37
37
38
38
### Implementation
39
39
40
-
Ensure you have Session Replay set up(see [developer guide on implementing Session Replay](/docs/session-replay/implement-session-replay/session-replay-web)), with the `record_heatmap_data` set to `true`.
40
+
Ensure you have Session Replay set up using our Javascript SDK (see [developer guide on implementing Session Replay](/docs/session-replay/implement-session-replay/session-replay-web)), with the `record_heatmap_data` set to `true`.
41
41
42
42
Clicks recorded using `record_heatmap_data` will only capture clicks while an a session recording is in progress. These clicks are sent as `$mp_click` and will not be counted against your plan data allowance.
43
43
44
+
Currently, heatmaps are not available on our Mobile Session Replay SDKs.
Copy file name to clipboardExpand all lines: pages/docs/session-replay/implement-session-replay/session-replay-android.mdx
+26-9Lines changed: 26 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ import { Callout } from 'nextra/components'
3
3
# Implement Session Replay (Android)
4
4
5
5
<Callouttype="info">
6
-
Android Session Replay is currently in invite-only Private Alpha. Please reach out to your Account Manager for any questions about Session Replay or Android Alpha access.
6
+
Android Session Replay is currently in invite-only Private Alpha. Please reach out to your Account Manager or our Support team for any questions about Session Replay or Android Alpha access.
7
7
</Callout>
8
8
9
9
<Callouttype="warning">
@@ -94,6 +94,8 @@ To enable Session Replay and set your sampling rate, create a `SessionReplayConf
94
94
95
95
Start with a low sampling rate, then adjust according to your specific analytics needs.
96
96
97
+
Recording only starts if the sampling check passes and you explicitly call startRecording(). Recording does not start automatically.
98
+
97
99
**Example Usage**
98
100
99
101
```kotlin
@@ -105,13 +107,15 @@ MPSessionReplayConfig(
105
107
106
108
### Manual Capture
107
109
108
-
To programatically start and stop replay capture, use the `.startRecording()` and `.stopRecording()` methods. This is optional, and can be used primarily to programmatically start and stop recording, or exclude something specific from recording.
110
+
To programatically start and stop replay capture, use the `.startRecording()` and `.stopRecording()` methods.
109
111
110
112
#### Start Capturing Replay Data
111
113
112
-
Call `.startRecording()` to force recording to begin, regardless of the `recordSessionsPercent` init option. The recording automatically stops when the app goes to the background. Therefore, if you want to continuously record the replays, you will need to restart the replay once the app becomes active again.
114
+
Replay recording does not start automatically — you must explicitly call `.startRecording()` after the random sampling check passes. Note: this is planned to change in upcoming releases, as we move towards recording beginning automatically if the sampling check passes.
115
+
116
+
Recording automatically stops when the app goes into the background, so you’ll need to call `.startRecording()` again when the app becomes active to begin capturing replays again.
113
117
114
-
This will have no effect if replay data collection is already in progress.
118
+
.startRecording() will have no effect if replay data collection is already in progress.
Call `.stopRecording()` to stop any active replay data collection. The SDK automatically stops recording when the app goes to the background.
129
+
Call `.stopRecording()` to stop any active replay data collection. The SDK automatically stops recording when the app goes to the background. Therefore, you will need to restart replay capture once the app becomes active again.
126
130
127
131
This will have no effect if there is no replay data collection in progress.
128
132
@@ -133,13 +137,13 @@ This will have no effect if there is no replay data collection in progress.
133
137
MPSessionReplay.getInstance()?.stopRecording()
134
138
```
135
139
136
-
#### Example Scenarios
140
+
#### Example Use Cases for Manual Capture
137
141
138
142
| Scenario | Guidance |
139
143
| --- | --- |
140
144
| We have a sensitive screen we don't want to capture | When user is about to access the sensitive screen, call `.stopRecording()`. To resume recording once they leave this screen, you can resume recording with `.startRecording()`|
141
-
| We only want to record certain types of users (e.g. Free plan users only) | Using your application code, determine if current user meets the criteria of users you wish to capture. If they do, then call `.startRecording()` to force recording on|
142
-
| We only want to users utilizing certain features | When user is about to access the feature you wish to capture replays for, call `.startRecording()` to force recording on|
145
+
| We only want to record certain types of users (e.g. Free plan users only) | Using your application code, determine if current user meets the criteria of users you wish to capture. If they do, then call `.startRecording()` to begin recording |
146
+
| We only want to users utilizing certain features | When user is about to access the feature you wish to capture replays for, call `.startRecording()` to begin recording |
143
147
144
148
### Additional Configuration Options
145
149
@@ -194,7 +198,7 @@ Server-Side Stitching allows you to easily watch Replays for events that were no
194
198
195
199
It works by inferring the Replay that an event belong using the Distinct ID and time property attached to the event. This is especially useful if you have events coming in from multiple sources.
196
200
197
-
For example, let's say a user with Distinct ID “ABC” has a Replay recorded from 1-2pm. Two hours later, an event was sent from your warehouse with a timestamp of 1:35pm with Distinct ID “ABC”. Server-side Stitching will infer that the event should belong in the same Replay.
201
+
For example, let's say a user with Distinct ID "ABC" has a Replay recorded from 1-2pm. Two hours later, an event was sent from your warehouse with a timestamp of 1:35pm with Distinct ID "ABC". Server-Side Stitching will infer that the event should belong in the same Replay.
198
202
199
203
To ensure Server-Side Stitching works, call [`identify()`](/docs/tracking-methods/sdks/android#identify) from the client-side using our SDK with the user's `$user_id`. This guarantees that events generated from both the client-side and server-side share the same Distinct ID. Learn more about [identifying users](/docs/tracking-methods/id-management).
200
204
@@ -315,3 +319,16 @@ Yes, standard XML-based apps are fully supported while Jetpack Compose apps have
315
319
#### Does it support Java based app?
316
320
317
321
Yes, Java and Kotlin are fully interoperable.
322
+
323
+
#### Does Mobile Session Replay work with my CDP?
324
+
Yes — but only if the Mixpanel Session Replay SDK is installed client-side.
325
+
326
+
Mobile Session Replay is compatible with CDPs like Segment and mParticle, but you must integrate the Mixpanel Session Replay SDK directly in your mobile app. Without it, replays won’t be captured.
327
+
328
+
Key Considerations:
329
+
- If you’re using Segment server-side, session replays will not be recorded, since the SDK isn’t running in the app.
330
+
- For Segment’s client-side Analytics-Swift SDK, you can use Segment’s Plugin Architecture to enrich events with the $mp_replay_id property, ensuring they’re linked to their replays.
331
+
- The Mixpanel Session Replay SDK is separate from the standard Mixpanel tracking SDK. You do not need the regular SDK, but the Replay SDK must be configured with a distinct_id and project token.
332
+
- Events can be linked to replays either by:
333
+
- Manually attaching the current replay ID to each event
0 commit comments