skillfed

eppo-server-sdk

Eppo SDK for Python

eppo-server-sdk v4.4.1 241.8K downloads/30d#8,867 on PyPI5
Permissive license Active released

What it is and what it does

Eppo's Python SDK is a server-side feature flagging and experimentation platform designed for multi-user contexts. It provides typed assignment functions (boolean, numeric, integer, string, JSON) to control feature rollouts, run A/B/n experiments, implement kill switches, and manage dynamic configuration. The SDK polls Eppo's API at configurable intervals to fetch flag configurations, caches them locally, and evaluates assignments instantly using simple comparisons.

The package requires an Eppo account and API key to function. It supports optional assignment logging callbacks for experiment analysis and can export flag configurations as JSON for bootstrapping front-end clients. With no runtime dependencies and support for Python 3.8+, it integrates into existing server applications with minimal friction. Configuration options include graceful error handling, polling intervals, and jitter settings.

Use it for:

  • Roll out new features gradually to a percentage of users while monitoring performance and user feedback.
  • Run A/B tests and multivariate experiments with automatic assignment tracking and analysis integration.
  • Implement kill switches to disable problematic features instantly without redeployment.
  • Manage contextual multi-armed bandits for dynamic optimization based on user attributes.
  • Bootstrap front-end applications with server-side flag configurations exported as JSON.
  • Organize mutually exclusive experiments using layers to prevent conflicting test assignments.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Server-side feature flagging and experimentation SDK that manages A/B tests, progressive rollouts, feature gates, and dynamic configuration with typed assignment functions.

Yes, if you need server-side feature flagging and experimentation. The SDK is actively maintained, has no security vulnerabilities, carries permissive licensing, and requires only an Eppo account to get started. Medium install friction is typical for compiled packages. Consider it essential for teams running controlled rollouts or A/B tests; skip it if you don't need experiment management or have an existing flagging solution.

Install

eppo-server-sdk on PyPI

pip

pip install eppo-server-sdk

uv

uv add eppo-server-sdk

poetry

poetry add eppo-server-sdk

Installing eppo-server-sdk

Before you install

Medium install friction due to compiled wheels across multiple platforms and Python versions. Actively maintained with recent releases; last commit on 2026-08-10 indicates ongoing development.

License in practice

Licensed under MIT (permissive), allowing free use, modification, and distribution with minimal restrictions.

Quickstart

pip install eppo-server-sdk

from eppo_server_sdk import Config, AssignmentLogger

client_config = Config(api_key="<SDK-KEY>", assignment_logger=AssignmentLogger())

variation = client.get_boolean_assignment('flag-key', 'user-id', {'country': 'US'}, False)

Requires an Eppo account and SDK key from the Eppo dashboard to initialize the client.

Verify before relying

  • Whether the SDK's 30-second polling interval and 15ms CDN latency claims are typical across all deployment environments.
  • Performance characteristics and memory footprint under high-volume assignment loads.
  • Compatibility with async/await patterns in modern Python applications.

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.8)
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance actively maintained — 219 days since the last release
Last repo commit
First released
Downloads 241,848/month — #8,867 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: eppo_server_sdk-4.4.1-cp310-cp310-macosx_10_12_x86_64.whl; eppo_server_sdk-4.4.1-cp310-cp310-macosx_11_0_arm64.whl; eppo_server_sdk-4.4.1-cp310-cp310-manylinux_2_24_armv7l.whl; eppo_server_sdk-4.4.1-cp310-cp310-manylinux_2_24_i686.whl; eppo_server_sdk-4.4.1-cp310-cp310-manylinux_2_24_ppc64le.whl; eppo_server_sdk-4.4.1-cp310-cp310-manylinux_2_24_s390x.whl; eppo_server_sdk-4.4.1-cp310-cp310-manylinux_2_24_x86_64.whl; eppo_server_sdk-4.4.1-cp310-cp310-manylinux_2_28_aarch64.whl; eppo_server_sdk-4.4.1-cp310-cp310-musllinux_1_2_aarch64.whl; eppo_server_sdk-4.4.1-cp310-cp310-musllinux_1_2_armv7l.whl; eppo_server_sdk-4.4.1-cp310-cp310-musllinux_1_2_i686.whl; eppo_server_sdk-4.4.1-cp310-cp310-musllinux_1_2_x86_64.whl; eppo_server_sdk-4.4.1-cp310-cp310-win32.whl; eppo_server_sdk-4.4.1-cp310-cp310-win_amd64.whl; eppo_server_sdk-4.4.1-cp311-cp311-macosx_10_12_x86_64.whl; eppo_server_sdk-4.4.1-cp311-cp311-macosx_11_0_arm64.whl; eppo_server_sdk-4.4.1-cp311-cp311-manylinux_2_24_armv7l.whl; eppo_server_sdk-4.4.1-cp311-cp311-manylinux_2_24_i686.whl; eppo_server_sdk-4.4.1-cp311-cp311-manylinux_2_24_ppc64le.whl; eppo_server_sdk-4.4.1-cp311-cp311-manylinux_2_24_s390x.whl

License :: OSI Approved :: MIT LicenseProgramming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyProgramming Language :: Rust

Tags

feature flag managementA/B testing SDKserver-side experimentationfeature gate libraryprogressive rolloutexperiment assignmentdynamic configuration
feature-flagsexperimentationa-b-testing

More Software Development packages