Dev guideAPI Reference
Dev guideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

SDK Compatibility Matrix

The latest versions of the Optimizely Feature Experimentation SDKs and their available features.

Optimizely Feature Experimentation follows the Semantic Versioning standard when upgrading and releasing the SDKs and clients. Optimizely is constantly working on adding support for new SDKs and touchpoints. Optimizely frequently enhances the existing SDKs to make them as idiomatic, performant, and easy to use as possible.

As a result, the minimum version support for some applications and SDK features may vary. The following tables list cases where version support for features differs. For a complete version history of any given SDK, the changelogs on their GitHub repositories remain the source of truth.

🚧

Important

When upgrading your code to the latest SDK's major version release, you should thoroughly review your code, including performance testing, in your staging environment before releasing to production.

Major version releases include breaking changes that may require updates to your code.

Client-side SDKs

Feature *AndroidiOS (Swift)FlutterJavaScript (Browser)React and React NativeFeature ReleaseDocumentation
Advanced Audience Targeting4.0.04.0.02.0.05.0.03.0.0January 2024See Advanced Audience Targeting and Implement Advanced Audience Targeting for client-side SDKs.
Forced Decision methods3.13+3.10+1.0.14.9+2.8+January 2022See the Forced Decision method topic for your language. For example, Java.
OptimizelyConfig V23.11+3.9+1.0.14.7+2.7+September 2021See the topic for your language. For example, OptimizelyConfig.
Decide, Create User Contex't, and Track Event` methods3.9+3.7+1.0.14.5+2.5+February 2021See the Migrate from older versions topic for your language. For example, React.
Numerical Audience >= and <=3.7+3.5+1.0.14.3+2.4+October 2020Target audiences.
Version Audience Targeting3.7+3.5+1.0.14.3+2.4+October 2020Target audiences.
Datafile AccessorN/AN/A1.0.13.7+2.3+October 2020See the topic for your language, for example, OptimizelyConfig.
JSON Feature Variables3.6+3.4+1.0.14.1+2.1+July 2020Create flag variables.
Targeted Rollouts (per-audience config)2.0+3.3.2+1.0.12.0+1.0+June 2020See Migrate from older versions topic for your language, for example, Android.
OptimizelyConfig API3.4+3.2+1.0.13.4+1.1+February 2020See the OptimizelyConfig topic for your language. For example, OptimizelyConfig.
Automatic Datafile Management1.0+3.1+1.0.13.2+1.0+June 2019Manage config (datafile).
Numerical Audience Targeting3.0+3.1+1.0.13.0+1.0+February 2019Target audiences.
Datafile Caching1.0+3.1+1.0.1N/A2.2+ (React Native)July 2020See the Initialize SDK topic for your language. For example, Initialize SDK.
Offline Event Persistence1.0+3.1+1.0.1N/A2.2+ (React Native)July 2020See the Event Dispatcher topic for your language. For example, Configure event dispatcher.

*This compatibility matrix captures only noteworthy features released in April 2018 and later. See the changelog for your SDK in GitHub for features released before April 2018 and minor feature releases.

Server-side SDKs

Feature *AgentC#GoJavaJavaScript (Node)PHPPythonRubyFeature ReleasedDocumentation
Advanced Audience Targeting4.0.04.0.02.0.04.0.05.0.0N/A5.0.05.0.0January 2024See Advanced Audience Targeting and Implement Advanced Audience Targeting for server-side SDKs.
Forced Decision methods2.6+3.11+1.8+3.10+4.9+3.9+4.0+3.10+January 2022See the Forced Decision method topic for your language. For example, Java.
OptimizelyConfigV22.5+3.10+1.7+3.9+4.7+3.8+3.10+3.9+September 2021See the topic for your language. For example, OptimizelyConfig.
Decide, Create User Context, and Track Event methods2.4+3.8+1.6+3.8+4.5+3.7+3.8+3.8+February 2021See the Migrate from older versions topic for your language. For example, Python.
Numerical Audience >= and <=2.1+3.6+1.4+3.6+4.3+3.5+3.6+3.6+October 2020Target audiences.
Version Audience Targeting2.1+3.6+1.4+3.6+4.3+3.5+3.6+3.6+October 2020Target audiences.
Datafile AccessorN/A3.6+1.4+3.6+4.3+3.5+3.6+3.6+October 2020See the OptimizelyConfig topic for your language. For example, OptimizelyConfig.
JSON Feature Variables1.3+3.5+1.3+3.5+4.1+3.4+3.5+3.5+July 2020Create flag variables
Targeted Rollouts (per-audience config)1.1+2.0+1.2+2.0+2.0+2.0+2.0+2.0+June 2020Run flag deliveries.
OptimizelyConfig API1.0+3.4+1.0+3.4+3.4+3.3+3.4+3.4+February 2020See the OptimizelyConfig topic for your language. For example, OptimizelyConfig.
Automatic Datafile Management1.0+3.2+1.0+3.2+3.2+3.2+3.2+3.2+June 2019See the Initialize SDK topic for your language. For example, Initialize SDK.
Numerical Audience Targeting1.0+3.0+1.0+3.0+3.0+3.0+3.0+3.0+February 2019Target audiences.

*This compatibility matrix captures only noteworthy features released in April 2018 and later. See the changelog for your SDK in GitHub for features released before April 2018 and minor feature releases.

Current SDK versions

The current, stable SDK release is labeled Latest in GitHub, which is the source of truth and takes precedence over this document.

SDKCurrent releaseReleased
Agent4.0.0January 2024
Android4.0.0January 2024
C#4.0.0January 2024
Flutter2.0.0January 2024
Go2.0.0January 2024
Java4.0.0January 2024
Javascript (Browser), Javascript (Node)5.0.1February 2024
PHP4.0.0June 2023
Python5.0.0January 2024
React, React Native3.0.1February 2024
Ruby5.0.0January 2024
Swift4.0.0January 2024