Skip to content

Amplitude Experiment Overview

Welcome to Amplitude Experiment. This page acts as a quick reference as well as a high level system overview of Experiment's end-to-end feature-flagging and experimentation platform.

  • Getting started


    Read the step-by-step guide to get started developing with Amplitude Experiment.

    Start developing

  • System overview


    Understand about how Amplitude Experiment works within your system.

    Learn more

  • Experiment SDKs


    Find the right Experiment SDK for your app.

    See the SDKs

  • Experiment REST APIs


    Explore the APIs for Amplitude Experiment.

    See the APIs

SDKs

Client-side SDKs work in a single-user context. Server-side SDKs work in a multi-user context.

Client-side

Server-side

REST APIs

API Description
Evaluation API Evaluate a user for the feature flags and experiments assigned to the deployment used to authorize the request
Management API Manage or list flags and experiments within your organization.

System overview

When it comes to feature flag delivery and experimentation, one size does not fit all. Amplitude Experiment is built for flexibility to fit in with any architecture and a variety of needs.

That said, you can generally split experimentation and feature-flagging systems into client-side and server-side architectures.

Client-side

Easiest way to get started delivering flag and experimenting on your client side application.

Client-side implementations assume a single user context. Amplitude Experiment loads flag and experiment configurations on startup for use with local evaluation, and fetches remote evaluation variants dynamically from Amplitude's remote evaluation service. When a variant is accessed from the SDK, an exposure event is tracked for the user.

Client-side experimentation diagram.

Server-side

Remote evaluation

Simple and flexible API & SDKs made to fit into any system.

Server-side remote evaluation involves making a request from your server to Amplitude Experiment's evaluation servers to fetch variants for a user. Use the resulting variants directly on the server or passed back for use on the client (or any other part of your system).

Server-side remote evaluation experimentation diagram.

Local evaluation

Fast evaluation for performance minded systems.

Server-side local evaluation runs evaluation logic on your server, saving you the overhead incurred by making a network request per user evaluation. The sub-millisecond evaluation is perfect for latency-minded systems which need to be performant at scale. However, because evaluation happens outside of Amplitude, advanced targeting and identity resolution powered by Amplitude Analytics isn't possible.

Client-side local evaluation experimentation diagram.