This is the multi-page printable view of this section. Click here to print.
Blog Posts - 2025
Selenium Privacy Policy
Selenium has always been committed to open-source transparency and user privacy, but we recognize that we could have done a better job communicating the details of Selenium Manager’s telemetry collection.
To address this, we have published a comprehensive Privacy Policy that clearly explains:
- What data is collected (and what isn’t)
- How we ensure compliance with GDPR and CCPA
- Why Selenium Manager includes opt-out telemetry
- How users can easily disable telemetry
The bottom line is that Selenium Manager collects only anonymous technical information to help us improve Selenium.
Additionally, starting in Selenium 4.30, Selenium Manager displays a one-time console message the first time telemetry is sent. This obviously and proactively informs users about telemetry, their right to opt out, and provides a direct link to the Privacy Policy.
Quick Recap of what Selenium Manager collects:
✔ Selenium version (to ensure compatibility across versions)
✔ Programming language (Java, Python, JavaScript, .NET)
✔ Operating system and CPU architecture (to prioritize OS support)
✔ Browser and version (to understand browser usage trends)
✔ Approximate geolocation (city-level), temporarily inferred from the IP (IP is discarded after processing)
❌ No usernames, emails, or personal identifiers
❌ No browser history or test execution data
❌ No full IP addresses (only used temporarily for location inference, then discarded)
❌ No cookies or persistent tracking
See everything for yourself: Selenium Manager Public Analytics
Opting Out of Telemetry
Like many other open-source projects, we use opt-out telemetry to ensure we receive representative, anonymous data that helps improve Selenium. We understand that some people prefer opt-in telemetry, and we explain our reasoning in detail in the Privacy Policy
Regardless, it is quite easy to disable telemetry by either:
- Setting an environment variable
SE_AVOID_STATS=true
- Using a configuration file
avoid-stats = true
Please see the Selenium Manager documentation for further details on how to do this.
Insights
Interesting tidbits we’ve learned from having opt-out telemetry over the past year:
- Selenium gets over 1 million unique users a week
- The number of unique users is growing at a rate of 10% per month
- Over 80% of sessions are on Windows
- Almost 90% of sessions use Chrome
- Fewer than 1% of sessions are with Safari or Internet Explorer
- A lot more sessions are with C# and Python than Java, and very few people are using Ruby and JavaScript
Note 1: The data only represents users who have updated to Selenium 4.19 or greater
Note 2: A unique user represents a unique session from a given IP address for that day
Selenium Community Live - Episode 2
The second episode of Selenium Community Live happened on Jan 21st, 2025, with speaker David Burns, event hosted by Pallavi Sharma
You can watch the episode here- Selenium Community Live - Episode 2
Selenium Community Live - Episode 2
David Burns, Selenium Project Leadership Member, Chair W3C Browser Testing and Tools Workgroup, Head Open source and Developer Advocacy at Browser Stack was the speaker for the episode. David spoke about Web Browsers and Browser engines, and how while automating them we should be aware of the underlying software we are automating, even the platform makes a difference! Thank you everyone who joined the community event.
Meet the Speakers:
Watch the Recording
Couldn’t join us live? Watch the entire episode here - 📹 Recording Link: Watch the Event Recording on YouTube
David also runs a blog, and if you are interested in knowing internals of Selenium explore the link - Blog By David
Stay tuned as we bring the next! Subscribe here to the Selenium HQ Official YouTube Channel.
Selenium 4.28 Released!
We’re very happy to announce the release of Selenium 4.28 for Javascript, Ruby, Python, .NET, Java and the Grid! Links to everything can be found on our downloads page.
Highlights
- Chrome DevTools support is now: v132, v131, and v130 (Firefox still uses v85 for all versions)
- Expanded nullability annotations for better type safety in .NET and Java.
- Refinements to Selenium Grid, including more efficient session handling and node management.
- Packaging and installation enhancements across Python and Ruby for smoother integration.
- Documentation improvements across Python and .NET libraries, ensuring clearer developer guidance.
- Updated language-specific implementations for modern development standards.
Changes by Language
Java
- Encapsulation Improvements: Encapsulated
additionalCommands
with a getter method (#14816). - Nullability Enhancements: Added nullness annotations for enums, exceptions, interactions, logging, and Proxy (#15105, #15094).
- SpotBugs Updates: Excluded specific warnings to maintain clean code (#14766).
- Improved Logging: Enhanced error handling and message clarity in exceptions (#15116).
- Relative Locators: Updates for
RelativeBy
locators, simplifying usage (#14482).
Python
- Packaging Fixes: Addressed issues for smoother installation (#14806, #14823).
- Documentation Upgrades: Added comprehensive docstrings to multiple classes, including
WebDriverWait
,ExpectedConditions
, andWebElement
(#15077, #15096). - Refactoring: Moved project metadata and improved code organization (#14837).
- Enhanced CDP Command Handling: Added
execute_cdp_cmd
toRemote
(#14809).
JavaScript
- Federated Credential Management Support: Introduced support for Federated Credential Management, enhancing authentication capabilities. (#15008)
- Node.js Version Specification: The minimum required Node.js version has been specified as 18.20.5.
- Improved Logging: Added detailed error messages for invalid cookie name validation in
getCookie
anddeleteCookie
methods, aiding in debugging. - Diagnostic Logging for Safari: Enabled diagnostic logging for Safari, facilitating better issue tracking and resolution.
.NET
- Nullability Improvements: Added annotations to
SessionId
,Alert
,CookieJar
,Logs API
, and more (#14840, #14874). - Refactored DevTools: Modernized code style and enhanced JSON parsing (#14990).
- Future-Proofing: Added notes and deprecated setters for better immutability (#15107).
- Testing Updates: Migrated NUnit assertions to modern syntax (#14870).
Ruby
- BiDi Network Enhancements: Added request handlers for authentication and interception (#14751).
- Cookie Management Updates: Added tests and improved handling for cookies (#14843).
Grid
- Improved Session Management: Enhanced slot matching and session queue handling (#14914).
- Dynamic Grid Enhancements: Added video recording capabilities on browser node (#15047).
- Reliability Boost: Improved HTTP request retries and node health checks (#14924).
Docker Selenium
Update procedure to install Firefox in Node/Standalone Firefox (#2550)
Enable video recorder in Node/Standalone containers (#2539)
Env var
SE_ENABLE_TRACING=false
is not required when starting the container anymore (#2549)Env var
SE_NODE_PLATFORM_NAME
&SE_NODE_BROWSER_VERSION
to adjust default Node stereotypes for autoscaling (#2520, #2525)Selenium Grid scaler in KEDA improvements (KEDA#6437, KEDA#6477)
We thank all our contributors for their incredible efforts in making Selenium better with every release. ❤️
For a detailed look at all changes, check out the release notes.
Contributors
Special shout-out to everyone who helped the Selenium Team get this release out!
Selenium
Dinesh Kumar R A
MustafaAgamy
Dennis Oelkers
Alex
Lauro Moura
Navin Chandra
Simon Benzer
Selenium Docs & Website
Swastik Baranwal
Jason Ren
Navin Chandra
Pallavi
Simon Benzer
Vinaysimha Varma Yadavali
Docker Selenium
AvivGuiser
Selenium Team Members
Thanks as well to all the team members who contributed to this release:
Agustin Pequeno
David Burns
Boni García
Diego Molina
Sri Harsha
Nikolay Borisenko
Alex Rodionov
Puja Jagani
Michael Render
Simon Stewart
Titus Fortner
Viet Nguyen Duc
Stay tuned for updates by following SeleniumHQ on:
Happy automating!