---
title: 2023 Feature Experimentation release notes
slug: feature-experimentation/release-notes/2023-optimizely-feature-experimentation-release-notes
docTags: 
createdAt: 2026-07-20T15:45:37.032Z
---

Subscribe to updates on this page using the notification and RSS feed options.

The following is a cumulative list of enhancements and major bug fixes in each Optimizely Feature Experimentation release.

Because Optimizely Feature Experimentation releases new features and fixes as soon as they are ready, this list will update regularly.

## December 

### New feature

- Released [automatic SRM detection](docId\:JFKBHyB1tPQH0-EMRjAOR).
  - Every customer needs to quickly identify problems and protect their experiments from unintended traffic imbalances. Optimizely now automatically runs SRM detection tests embedded within your Stats Engine A/B experiments. When the Optimizely detector finds unusual imbalances in visitor traffic to an experiment's variations, it identifies the severity and then sends out an in-product notification. You can now detect experiment problems early and without manual effort. See [Optimizely's experiment health status documentation section](docId:1_hGelDKmv35xsaAzAH3Z).

## November 

- Released [webhooks](docId\:fxs-QgSDWJiHQc0JQ1Y0C) for all environments, not just the primary environment.
  - Also released an update where only the updated environment's datafile is revised. For example, if you update the development environment, Optimizely will only create new datafile revisions for that development environment.
- Released the ability to schedule changes to your [rule's audience](docId\:p46i-zfIwefbf8noQwHhr). 

## October 

### Improvements 

Released platform enhancement enabling you to deliver [feature flag](docId\:eH-UMm_rOn_GdGDGLV6__) and [experiment](docId:8pnfCv-sR37goLcxTtCPv) changes to your end-users significantly faster (\~90% average performance improvement, based on initial Production data). 

### New features

- Released the ability to [schedule changes to your flags and rules](docId\:p46i-zfIwefbf8noQwHhr).
- Released the ability to have [multiple experiments per flag](docId:_4OpAAw99L5HVhT-OCJTW).

## August 

### Collaboration was released

[Collaboration](https://www.optimizely.com/insights/blog/announcing-experiment-collaboration/) is designed to help teams manage their experiment ideation, planning, and hypothesis-creation process more effectively. Learn more and create your first hypothesis by following the [Get started with Collaboration](docId\:D3UDxsZiQIyrlpX5SITTv) guide.

### Feature Experimentation API improvements

- Two new API endpoints were released to the Optimizely Feature Experimentation API.
  - [Fetch the rule for a ruleset in an environment](docId\:YYvzC4lOorCtWiVhPKMmL)
  - [Fetch a Rule for a specific experiment\\\_id](docId\:E7_P_8NWk9Wh3k19PMZtE)
- You can now run API calls directly from the [developer API reference documentation](docId\:lMUQVOETwikoFzp7643EQ).

## May 

### Breaking change SDK releases

The [Advanced Audience Targeting](docId:6UBBxxRv331nBIVZ2lun8) integration with Optimizely Data Platform (ODP) for the following Feature Experimentation SDKs is now in beta:

- [Android SDK](https://github.com/optimizely/android-sdk/releases/tag/4.0.0-beta)
- [C# SDK](https://github.com/optimizely/csharp-sdk/releases/tag/v4.0.0-beta)
- [Go SDK](https://github.com/optimizely/go-sdk/releases/tag/v2.0.0-beta)
- [Java SDK](https://github.com/optimizely/java-sdk/releases/tag/4.0.0-beta)
- [JavaScript Browser SDK and JavaScript Node SDK](https://github.com/optimizely/javascript-sdk/releases/tag/v5.0.0-beta)
- [Python SDK](https://github.com/optimizely/python-sdk/releases/tag/5.0.0-beta)
- [Ruby SDK](https://github.com/optimizely/ruby-sdk/releases/tag/v5.0.0-beta)

New API added to the SDK's `OptimizelyUserContext`

- `fetchQualifiedSegments()` this API will retrieve user segments from the ODP server. The fetched segments will be used for audience evaluation. The fetched data will be stored in the local cache to avoid repeated network delays.
- When an `OptimizelyUserContext` is created, the SDK will automatically send an identify request to the ODP server to facilitate observing user activities.

New APIs added to the SDK's `OptimizelyClient`

- `sendODPEvent()` – customers can build and send arbitrary ODP events that will bind user identifiers and data to user profiles in ODP.
- `createUserContext()` – (For server-side SDKs **only**) – with anonymous user IDs, user-contexts can be created without a userId. The SDK will create and use a persistent `VUID` specific to a device when userId is not provided.

### Additional releases

- The Optimizely Feature Experimentation [Flutter SDK](docId\:H40A_J_ji7Pbc7lTvA2oK) is now in General Availability
- [Advanced Audience Combinations](docId\:f-kDrilUaQvTtUINK2Wk1) is now in General Availability

### Bug Fixes

- Fixed an error where Cross-project events do not always appear in all projects metrics.
- Fixed various bugs with [change history:](docId\:eH-UMm_rOn_GdGDGLV6__)
  - Fixed a bug that made change history unavailable for certain customers.
  - Fixed a bug where change history would return a 403 error.
  - Fixed a bug where change history would display Something Went Wrong and not load the change history.
  - Fixed a bug where existing rules would show as created instead of updated.
  - Fixed a bug where change history did not log the updated rule when the rule was added, updated, or removed from an exclusion group.
  - Fixed a bug where deleting a variation or rule also deleted the history of the variation or rule.
- Fixed a bug on the Reports page where updated rule descriptions would not display.
- Fixed a bug where new targeted delivery rules could not be saved.
- Fixed a bug where pages would sometimes not populate when switching between differing project types.

### Feature Experimentation API improvements

- Renamed Feature Experimentation REST API from Optimizely Flags API to [Optimizely Feature Experimentation API](docId\:CwbqaxvWjxN8pwcorN55w).
- Fixed a bug where the API would incorrectly return 401, 500, and 504 errors.

### Additional enhancements

- Updated the [API Values page](docId\:uu6zmA5Bkeqsq84hqUmL3) to include Audience IDs of [“not” conditions](docId\:f-kDrilUaQvTtUINK2Wk1).
- Added a confirmation modal when toggling a [flag or rule On or Off](docId\:F8tdFPnxECabBXsQkBqDt).
- Upgraded Agent’s [OpenAPI specification schema](https://swagger.io/specification/) to version 3.1 with additional improvements to Agent’s error code messages and the descriptions of endpoints. View the updated [API documentation](docId\:qb3u3WT3ZvjC_yx3j3tHx).
- Updated the default name created when copying a rule to clarify that the rule is a copy.

## March 

### Enhancements

- Improved the layout of the Flags list for better usability.
- Rules are set as **paused** on creation, which enables staging rules at scale.

### Bug Fixes

- Fixed an issue where the Flags UI dashboard was not loading for some customers.
- Fixed an issue where a 500 error was being reported when trying to change the reporting date range in [Program Management](https://www.optimizely.com/program-management/).
