Skip to main content


Optimizely Knowledge Base

Project Settings: Privacy in Optimizely

  • Manage settings in the Implementation and Advanced tabs of your project Settings
  • Mask descriptive names and disable force parameters for additional privacy
  • Understand tradeoffs between additional privacy and integrations/compatibility

The Optimizely snippet contains objects that make it easier for users to QA and debug experiments, as well as transmit information to other systems. Some objects and experiment views can be exposed if precautions are not taken, so some users prefer a higher level of privacy for the functionality and information contained in these objects. Read on to learn about privacy options that help you protect your experiment information and comply with privacy laws in certain countries.

Adjust your project's privacy options in Settings > Implementation:

  • Mask descriptive names

  • Disable the force variation parameter

  • Allow anyone to view draft or paused experiments by appending the query parameter

  • Anonymize IP addresses

Privacy settings only show for projects that are not a custom snippet project.

Here's how to find your project's privacy settings:

  1. Navigate to Settings > Implementation.

  2. Scroll down to Privacy Settings.

We have a different article about account privacy. At Optimizely, we take the security of your data very seriously -- and we know you do too. Here are some suggestions to help you protect your Optimizely account.

Mask descriptive names

To share data with third-party analytics platforms, Optimizely contains some information about experiments, variations, audiences, sections, and segments that needs to be exposed at the client level. Although these descriptive names are helpful for debugging and offer significant benefits for some third-party integrations, you can replace the descriptive names with numerical IDs for additional privacy.

Check the box to enable the Mask descriptive names setting and click Save:

After you mask descriptive names, your third-party services will receive numerical IDs instead of names. New projects will have Mask descriptive names enabled by default, so variation names won't pass into your analytics platform. This also means that Optimizely won't be able to pass the descriptive names of individual variations into your analytics platform.

Here's where to find descriptive names and IDs in Optimizely.

If you change data object name settings while an experiment that has a standard or custom third-party integration is running, you'll create two sets of results for that experiment in your analytics platform. The best time to make the change is when there are no experiments with any sort of integration running.

Disable the force variation parameter

Force variation parameters help you manually force yourself into a specific variation for a specific experiment on any page containing your Optimizely JavaScript file. The parameters allow you to skip all targeting conditions (such as audience targeting) and go straight to a variation or personalized experience. This can be handy for QA and debugging.

For example, let's say you change the text or an image on your homepage. You can append a query parameter to quickly view change without worrying about meeting the targeting conditions. 

The force variation parameter is disabled by default so visitors can't force variations to show if they're not supposed to see them.

  • To use the parameter to QA live, published experiments, uncheck the Disable the force variation parameter setting and click Save

  • To use the parameter to QA draft or paused experiments as well as live, published experiments, uncheck the Disable the force variation parameter setting and check Allow anyone to view draft or paused experiments and click Save

Return both features to the default when you've completed QA by checking the Disable the force variation parameter setting and click Save.

If you check Allow anyone to view draft or paused experiments, anyone can view your draft or paused changes by appending optimizely_token=PUBLIC (instead of the real token) to the Preview URL. Enable this setting with care, and disable it when you've finished QA.

Alternatively, use the Share Link feature to show draft variations and experiences that haven't been published to team members without exposing these variations or experiences as broadly.

Exclude draft and paused experiments

In Optimizely, draft and paused experiments are excluded by default, so you don't need to check this option.

Anonymize IP addresses for this project

In some countries, you may be required to remove the last block of an IP address to protect the identity of your visitors. You can remove the last block of your visitors’ IP address before Optimizely stores event data.

Read on to see how to do this at the project level. If you're an administrator, you can also do this automatically at the account level.

If you enable IP anonymization for this project

  • The last octet of the IP address changes into a 0 (zero) for all tracking calls made to Optimizely

  • The full IP address won't be stored anywhere and cannot be retrieved later

To enable IP anonymization for this project, check Anonymize IP addresses and click Save:

If you're using both IP anonymization and IP filtering, make sure that the regular expression that you use for IP Filtering treats the final octet as 0 (zero).

Filter IP addresses out of results

You can filter individual IP addresses or IP ranges out of your experiment results. This comes in handy if you want to exclude your company's employees from being counted toward experiment results. Check out this article on IP filtering to learn more.

Here's how to find your project's IP filtering settings:


  1. Navigate to Settings > Advanced.

  2. Scroll down to Results Filtering.

  3. Enter a regular expression (1,500 characters maximum) for the IP addresses you'd like to filter from your Results page.

  4. Click Save.

IP filtering won't prevent certain visitors from seeing the experiment—it only excludes them from the experiment results. To exclude IP ranges from being included in experiments, see our article on IP address audience conditions.


If you use a regular expression to match multiple IPs, your IP filtering regex should match the full IP address. Partial matches will not work. If you've turned on IP anonymization as well, the IP filtering regex should match the last octet as 0 (zero).