-
Notifications
You must be signed in to change notification settings - Fork 0
how convert works
The Convert Fullstack SDK allows developers to integrate A/B testing, feature flags, and personalization into their applications. It manages different user experiences and features based on visitor data and defined rules, while also tracking visitor interactions and conversions.
- A/B Testing (Experiences): Test different versions of a feature, page element, or flow to see which performs better. The SDK assigns each visitor to a variation and ensures they consistently see the same one.
- Feature Flags (Feature Rollouts): Gradually roll out new features to a percentage of users, toggle features on/off without deploying code, and configure feature behavior with variables (boolean, string, integer, JSON).
- Personalization: Target specific audiences with tailored experiences based on visitor attributes.
- Conversion Tracking: Track goals (sign-ups, purchases, page views) and report results back to Convert for analysis.
The SDK follows a simple flow:
- Initialize — Provide your SDK Key (or static config). The SDK fetches your project configuration from Convert's CDN.
- Create Context — For each visitor, create a context with their unique ID and optional attributes (browser, country, etc.).
- Run Experiments — Ask the SDK which variation a visitor should see. The SDK evaluates targeting rules and deterministically assigns the visitor using a consistent hashing algorithm.
- Run Features — Check if a feature flag is enabled for the visitor and retrieve its variable values.
- Track Conversions — Record when visitors complete goals (e.g., sign-up, purchase). Events are batched and sent to Convert's servers.
flowchart LR
A[Initialize SDK] --> B[Create Visitor Context]
B --> C{Run Experiments}
B --> D{Run Features}
C --> E[Show Variation]
D --> F[Toggle Feature]
E --> G[Track Conversions]
F --> G
| Concept | Description |
|---|---|
| Experience | An A/B test or feature rollout. Contains one or more variations. |
| Variation | A specific version within an experience (e.g., "Control" vs "New Headline"). Each has a traffic allocation percentage. |
| Feature | A feature flag with typed variables (boolean, string, integer, JSON). Enabled/disabled per visitor based on linked experiences. |
| Goal | A conversion event you want to track (e.g., "Completed Sign-Up"). Linked to experiences for reporting. |
| Audience | Targeting rules that determine which visitors qualify for an experience. Evaluated using visitor attributes. |
| Location | Site area rules that scope where an experience applies (used for targeting in fullstack as path-based rules). |
| Segment | A classification of visitors for reporting purposes (e.g., "Mobile Users", "Returning Visitors"). |
| Bucketing | The process of deterministically assigning a visitor to a variation using a hash of their ID. |
The SDK is designed for Fullstack projects — server-side A/B testing, feature flags, and feature rollouts. It supports:
- Experience types:
a/b_fullstackandfeature_rollout - Variation change type:
fullStackFeatureonly - Audiences of type
transient(conditions checked each time)
Other experience types and change types exist in the broader Convert platform (for web-based projects) but are not processed by this SDK.
| SDK | Language | Installation |
|---|---|---|
| JavaScript SDK | JavaScript / TypeScript |
npm install @convertcom/js-sdk or yarn add @convertcom/js-sdk
|
| PHP SDK | PHP 8.2+ | composer require convertcom/convertcom-php-sdk |
| Android SDK | Kotlin / Java (minSdk 24) |
implementation("com.convert:sdk-android:+") from Maven Central |
All Convert Fullstack SDKs share the same architecture, bucketing algorithm (MurmurHash3), and data model. A visitor bucketed into Variation B by the JavaScript SDK will also be bucketed into Variation B by the PHP or Android SDK for the same experience — cross-SDK determinism is guaranteed.
- Architecture Overview — How the SDK is structured internally
- Data Model Reference — Entity relationships and field definitions
- Quickstart Overview — Get running with your first experiment
Copyrights © 2026 All Rights Reserved by Convert Insights, Inc.
Getting Started
Ruby SDK
- Quickstart
- Installation
- Initialization
- Configuration
- Return Types & Sentinels
- Code Examples
- Fork Safety & Runtime Recipes
- Tracking Control
Core Concepts
- Experiences & Variations
- Feature Flags
- Bucketing Algorithm
- Rule Evaluation
- Segments
- Data Management
- Event System
- API Communication
How-To Guides
- Running Experiences
- Running Features
- Tracking Conversions
- Visitor Context
- Persistent DataStore
- Troubleshooting
Contributing