,

Anonymous Usage Data Collection in Miniconda

Team Anaconda

Last September, we announced the inclusion of anaconda-anon-usage in two of our signature products: Anaconda Distribution and Anaconda Navigator. That successful rollout has led to our decision to now include it in Miniconda. In this article, we detail why we’re doing this, how this data is being used, what data will be collected, where and when this update is happening, and how you can disable the feature.

Why are we adding anaconda-anon-usage to Miniconda?

Since September 2023, data collected from anaconda-anon-usage have enabled us to explore how a subset of our users interact with our products and repositories, primarily those who used the Anaconda Distribution installer, Anaconda Navigator, or our command line tool anaconda-client. We’ve learned:

  • We have recorded over 6.8 million installations of anaconda-anon-usage.
  • 63% of installations use only one conda environment (i.e. “base”), perhaps representing an opportunity to better educate users on conda’s environment creation and management capabilities.
  • Just 0.6% of users have disabled anaconda-anon-usage, indicating an openness among our user base to share anonymous usage data to improve our products and their experience.

Anaconda has also begun to leverage the data to think about how we might better serve our users and customers to navigate the open-source software landscape. For example, when a vulnerability is reported for specific versions of a package, we can track the number of active environments that contain the vulnerable packages and the proportion of those environments that upgrade to a newer version that has patched the vulnerability. In the future, Anaconda might use such data to alert customers when vulnerable packages exist in their environments and provide guidance on remediation.

Miniconda, our minimal installer, was downloaded over 19 million times in the first quarter of 2024.

The early insights from anaconda-anon-usage have confirmed for us that expanding our collection of anonymous usage data in Miniconda will only further help us to better understand and enhance the user experience of our communities and customers.

What information is being collected?

Every conda installation, by default, utilizes the industry standard user-agent mechanism to provide generic identification information with every web request, including:

  • The versions of the conda and requests Python packages;
  • The variant and version of the Python interpreter; and
  • The variant and version of the host operating system.

When anaconda-anon-usage is installed, it adds three randomly generated tokens to the request:

  • A client token unique to each distinct Miniconda installation;
  • An environment token unique to each conda environment; and
  • A session token unique to each individual conda transaction.

These tokens contain no personally identifiable information – not even the name of your conda environment. But they do help us draw statistical conclusions about usage by allowing us to more precisely distinguish between distinct users, environments, and transactions in our access logs.

For a more technical discussion on anaconda-anon-usage and how it determines and transmits user data, please see the “Deeper Dive” section of the original September announcement.

Where and when is this change occurring?

The anaconda-anon-usage package will be included in version 24.3.0 of the Miniconda installer, which is scheduled for release in mid-April 2024.

To be clear, anaconda-anon-usage is not being added as a dependency to conda itself. We intend to collect data associated specifically with users who engage with Anaconda products, and not the larger open-source community, whose members may prefer to rely entirely on community-driven resources. You will not be affected by this change if you rely exclusively on community channels like conda-forge and community installers like Miniforge.

How to disable anaconda-anon-usage

If you wish to disable the collection of anonymous usage data, you can do so by running this command:

conda config --set anaconda_anon_usage off

You may also manually edit your conda configuration file and add the line:

anaconda_anon_usage: false

To re-enable the additional usage data, run this command,

conda config --set anaconda_anon_usage on

or remove the anaconda_anon_usage entry from your configuration file. Your choice will remain in effect as long as you do not delete your conda configuration file (even if you uninstall and reinstall Miniconda).

Thank you!

Anaconda continues to be grateful for the trust our users have placed in us. Please reach out to us if you have any questions, comments, or concerns.

Talk to an Expert

Talk to one of our financial services and banking industry experts to find solutions for your AI journey.

Talk to an Expert