Use Split to measure the statistically significant impact of new features and experiments on your KPIs. Send Split feature data to FullStory to validate your results with customer experience data and see exactly how customers are engaging with each feature flag treatment. With both FullStory and Split in place, you can mark captured sessions with the Split treatments a user saw and create FullStory segments of sessions by treatment.

For example, if you have an onboarding_enhancements split with three treatments “v1”, “v2”, and “v3”, the integration allows you to identify all captured sessions where users saw the treatment “v2” of your split for playback and analysis in FullStory. 

Get the most out of FullStory + Split

See how customers interact with new features and experiments
Compare how users interacted with each feature flag treatment in aggregate or watch an individual user session to see exactly what their experience was like.

Detect feature-related friction points in the user journey.
Track frustration signals indicating customer experience issues and trace back to the feature at fault.

Build funnels based on any customer goals for a feature.
Determine where customers are falling out of the funnel and prioritize improving the features with the greatest impact on your customers and business goals.

How it works

Once you’ve added the Split and FullStory JavaScript snippet to your product, you can configure Split to send feature data as custom events to FullStory to mark and segment user sessions with the feature flag treatment users received. From here, you can dig deeper into the customer experience with each feature in FullStory.


To connect FullStory with Split, you will need:

  • FullStory's data capture snippet installed
  • Split JavaScript SDK 10.12.1 (or later) installed

Send Split impressions as FullStory custom events

The Split + FullStory integration uses out-of-the-box features of both products.

var user_id = uuidv4 ();
var factory = splitio({
	core: {
		authorizationKey: 'YOUR SPLIT BROWSER API KEY',
		key: user_id,
		trafficType: 'user',
		labelsEnabled: true
	impressionListener: {
		logImpression: logImpression

function logImpression (impressionData) {
	FS.event('split_evaluation', impressionData);

First, associate the FullStory session with the same key used for Split getTreatment evaluations by calling FS.identify. In the listing above, the user_id is shared by the FS.identify API call and the Split SDK configuration key.

Then, add a custom impression listener to report Split impressions to FullStory’s custom events API. The FullStory custom event API is called for a split_evaluation event, passing the entire impression data as properties for that event. The impression data includes the name of the split evaluated and the treatment the user received.

If you’re not familiar with the Split JavaScript SDK configuration, visit Split's JavaScript documentation for more details.

Verify split_evaluation Events are arriving in FullStory

On the session playback screen, look for the split_evaluation event.


If you have many events, try searching for split_evaluation via the Event types drop down.


Create a segment based on treatment received

Once you have split_evaluation events, you can create a new FullStory segment that will contain all the users who received a particular treatment from a given split. From the FullStory home screen, Navigate to Segments > New Segment.

Next, under event filters, select Custom Event > API Events and click split_evaluation.


Now build an event filter for any split and treatment you’ve integrated.


In this example, the segment will show sessions where there was a getTreatment call to multivariant_demo and the user received “v3” as their treatment.

Finally, play sessions and review specific customer experiences! Knowing which treatment a user saw for a particular split is crucial data for evaluating their experience with FullStory. This simple integration makes that data available to analyze a single user’s session and to create segments for overall comparison of behavior between treatment groups.

Need to get in touch with us?

The FullStory Team awaits your every question.

Ask the Community Technical Support