Why do we use telemetry reporting?
Telemetry data enables us to improve Rasa based on real-world usage, ensuring that it meets the operational needs of organizations and continues to evolve in line with industry demands. This helps us design future features and prioritize current work, so you can benefit directly from our reporting. So how will we use the reported telemetry data? Here are some examples of what we use the data for:- Feature Optimization and Development: By understanding which languages, pipelines, and policies are most frequently used, we can prioritize research and development in areas that will provide the greatest benefit to our enterprise clients. This helps us improve text, voice and dialogue handling, ensuring Rasa supports the most relevant features for your business needs.
- Performance Testing and Scalability: Telemetry data on dataset sizes and structure (e.g., the number of intents or actions) allows us to better test Rasa under various conditions. This ensures Rasa performs optimally across different types of enterprise applications, from small-scale deployments to large, complex systems.
- Error Identification and Resolution: Insights into common error patterns (e.g., during initialization or training) enable us to improve Rasa’s stability and reliability. This helps us address recurring issues more effectively, reducing operational friction for your team.
What about privacy and sensitive data?
We designed our telemetry to ensure that we collect only the data necessary to help us optimize our products and services, identify issues, and improve the overall user experience.No Data Sharing with Third Parties
Regardless of whether telemetry is enabled or disabled, Rasa does not share telemetry data with third parties. Your organization’s data remains confidential and is used solely for the purposes of improving our Pro and providing better support.Data Collection
The data points aggregated for each subscription include usage details, command invocations, performance measures and errors. Here are some data points that are collected:- Event Type: Information about actions performed in Rasa (e.g., “Training Started”, “Error Encountered”).
- System Information: Information about the environment in which Rasa is running, such as the operating system, number of CPUs/GPUs, and whether the system is running in a cloud or containerized environment.
- Versions: Information on the versions of Rasa and Python in use, which helps us ensure compatibility and performance across different setups.
- Licence Information: A hash of your organization’s license key and the name of the company associated with the license.
- Machine ID: A UUID that is stored locally and sent as part of the telemetry data to uniquely identify the environment where Rasa is deployed.
- Your training data
- Any messages your assistant receives or sends
- The techniques that you used to improve your assistant
- Customer credentials embedded in your configuration (see Credential redaction below)
Credential redaction
Thetraining_started event serializes parts of your configuration (model_groups,
pipeline, policies, and sub-agent configs under agents) so Rasa can see which
components you use. If you write a credential directly into one of those config blocks
instead of referencing it through a ${VAR} environment variable, Rasa redacts it
before sending the event. Redaction ignores the value shape, so Rasa replaces a
hardcoded secret and a ${VAR} placeholder alike.
Rasa applies three redaction rules:
- Credential-shaped key names. Rasa replaces values under keys such as
api_key,password,token,client_secret,authorization,aws_secret_access_key, and provider variants likeopenai_keywith<redacted>. Matching folds case and hyphens, so it also catchesAuthorizationandapi-key. A trailing_password,_secret,_token,_key, or_authon any key also triggers redaction. - URL userinfo and query stripping. Rasa rewrites values under URL-shaped keys
such as
url,uri,base_url,api_base,endpoint,openai_proxy,redis_url, and any*_url/*_uri/*_proxy/*_endpoint/*_basevariant. The scheme, host, and path stay for diagnostics. Rasa removes userinfo (user:password@), the query string, and the;key=valueparams segment. Seestrip_url_credentials. - Key names only for free-form maps. For mappings whose keys are provider-defined
and cannot be enumerated in advance (
auth,additional_params, and MCPmeta_map.static), Rasa reports only the set of key names. It drops the values entirely.
mcp_servers block under agents in the payload at all, so
MCP server URLs and their per-server parameters never leave your machine through
telemetry. Rasa still reports sub-agent MCP connections and applies the same three
redaction rules to them.
Inspecting Telemetry Data
We believe in full transparency. If you prefer to inspect the telemetry data before deciding whether to opt out, you can enable telemetry debug mode. This will allow you to view all the data that would be transmitted without actually sending it to our servers:rasa train:
How to opt-out
We understand that some organizations may prefer to disable telemetry data collection. You can opt out of telemetry reporting at any time without impacting the core functionality of Rasa. Disabling telemetry ensures that no data will be sent to Rasa, but you will still retain full access to Rasa’s features and performance. To opt out of telemetry, use one of the following methods:Opt out with the Command Line
You can disable telemetry directly through the command line by running the following command:Opt out with environment variables
Alternatively, you can disable telemetry by setting theRASA_TELEMETRY_ENABLED environment variable. This approach allows you to manage telemetry through
your system’s configuration settings: