Full Stack Method
Convert Full Stack Experimentation Platform
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.
What Can You Do With It?
- 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.
How Does It Work?
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
Key Concepts
| 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. |
Fullstack Project Scope
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.
Available SDKs
| 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 |
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 SDK for the same experience — cross-SDK determinism is guaranteed.
Next Steps
- Architecture Overview — How the SDK is structured internally
- Data Model Reference — Entity relationships and field definitions
- Quickstart Overview — Get running with your first experiment
Updated about 1 month ago