Cartful + Segment Integration
Route Cartful quiz events and attributes to Segment using Studio's Custom JavaScript Integration or Custom API Integration. No native Segment plugin — full flexibility via the plugin framework.
Last updated 2026-02-22
Cartful + Segment
Does Cartful integrate with Segment?
Yes. Cartful integrates with Segment using Studio’s plugin framework, which gives teams full control over which events, properties, and Segment call types are sent. Clients actively use this integration path in production.
Why Studio’s plugin framework
Segment is a routing layer — teams use it differently depending on their stack, their downstream destinations, and their data contracts. A fixed native integration would force a one-size-fits-all mapping that most Segment teams would need to customize anyway.
Studio’s plugin framework is the intended approach for tools like Segment. It uses the same trigger system and event model as Cartful’s native analytics plugins (GA4, GTM, Adobe Analytics), but gives you full control over the SDK calls, event names, and properties. The result is an integration that matches your Segment workspace exactly rather than requiring you to work around a fixed mapping.
How the integration works
Cartful’s Studio platform includes two plugin types that route data to Segment:
Custom JavaScript Integration (client-side)
Runs in the browser. You implement Segment SDK calls (analytics.track(), analytics.identify()) within the plugin and configure which Studio events trigger it. This path has full access to the complete set of quiz events.
Available trigger events: quiz start, quiz complete, start over, step enter, step leave, step skip, email submit, email skip, product view, add to cart, answer change, recommendations loaded, and per recommendation loaded.
Custom API Integration (server-side)
Sends events to Segment’s HTTP API from the server. This path only fires when the shopper completes the email modal, so it has a more limited event scope than the client-side approach.
What you control
Everything. Cartful does not prescribe which Segment calls to make, what events to name them, or which properties to include. You implement the mapping within your plugin:
- Call types:
analytics.track(),analytics.identify(), or both - Event names: whatever your Segment workspace expects
- Properties and traits: mapped from the quiz event parameters available in Studio
- Identity resolution: if needed, you implement it in your plugin (Cartful does not call
analytics.identify()natively)
How it works (setup)
- Create a Custom JavaScript Integration in Studio.
- Implement Segment SDK calls within the plugin —
analytics.track()for events,analytics.identify()for traits, or both. - Configure triggers — select which Studio events fire the plugin.
- For server-side (optional): create a Custom API Integration that sends to Segment’s HTTP API. This only fires on email modal completion.
- Test: run a quiz session and confirm events appear in the Segment debugger.
If the Segment SDK is already loaded on the page outside of Studio, you can reference it from within your Custom JavaScript Integration — the trigger just needs to be defined inside Studio.
Retake behavior
Each trigger event fires independently based on its configuration. When a shopper retakes a quiz, the relevant events fire again naturally (quiz start, quiz complete, step enter, etc.). There is no special retake handling or deduplication — this is inherent in the event model.
Good to know
- Plugin-based. The integration is built using Studio’s Custom JavaScript Integration or Custom API Integration rather than a fixed native connector. This is by design — it gives you full control over the mapping.
- Server-side scope. The Custom API Integration only fires on email modal completion. For full event coverage, use the client-side approach.
- Identity resolution is yours. Cartful does not call
analytics.identify()natively. If you need it, you configure it in your plugin — which means you control the identity logic rather than inheriting a default. - Segment SDK familiarity helps. Setup is faster if your team is already comfortable with Segment’s SDK and API conventions.
See: Integrations hub · Product
Frequently asked questions
How does the Segment integration work in Studio?
Cartful integrates with Segment using Studio's Custom JavaScript Integration (client-side) or Custom API Integration (server-side). This gives full flexibility over which events and properties are sent and how they map to Segment calls. It uses the same trigger system as Cartful's native analytics plugins.
What Segment call types can I use?
Both analytics.track() and analytics.identify() are available. You implement them within your Custom JavaScript Integration. The choice of call type, event names, and properties is entirely up to you.
What's the difference between client-side and server-side?
The Custom JavaScript Integration runs in the browser and can be triggered by any Studio event (quiz start, step enter, add to cart, etc.). The Custom API Integration runs server-side but only fires when the shopper completes the email modal, so it has a more limited event scope.
How is the person identified in Segment?
Identity resolution must be implemented by the customer within their plugin. Cartful does not call analytics.identify() natively. If you need identity resolution, you configure it in your Custom JavaScript Integration.
What happens when a shopper retakes a quiz?
Each trigger event fires independently. A retake naturally fires the relevant events again (quiz start, quiz complete, etc.) based on whichever triggers you configured. There is no special retake handling needed.
Can I reference the Segment SDK from outside Studio?
Yes. If the Segment SDK or another utility is loaded on the page outside of Studio, you can reference it from within your Custom JavaScript Integration. The trigger must still be defined inside Studio.
Does this require technical knowledge?
Familiarity with Segment's SDK and API conventions helps. If your team already works with Segment, the setup will feel natural — you are implementing the same SDK calls you would use anywhere else, with Studio handling the trigger logic.
Related
See Cartful in action
Get a live walkthrough tailored to your catalog.