
Project Goals
Rapid7's platform and product suite lacked direct license management, requiring customers to rely on manual support to access critical plan, usage, and renewal information. This led to frequent frustration as users were bounced between representatives, repeating their inquiries without a clear resolution. To address this, the project aimed to create a centralized, user-friendly licensing solution that empowered customers with self-service access to their license details, reducing reliance on support teams and improving overall user experience.
Problem
Solution
Result
Self-service licensing had been attempted twice at Rapid7 and stalled both times, and the reason was structural: the platform spanned 7+ products, many acquired, running on different codebases with no shared standard for what their backends could report about usage or entitlements. Any licensing design that assumed unified data was a multi-year platform bet that executives would never prioritize over faster wins. So I designed in two horizons. I defined the minimum data contract every product could realistically meet and delivered an MVP scoped to that floor, built so individual teams could adopt it incrementally, while the north-star designs shown here established where the system would extend as the platform matured, ensuring the MVP was a foundation rather than a dead end.
I started from a fully realized vision of what licensing could be five years out, solving every problem across the product suite. Auditing what each product's backend could actually expose, and where prior attempts had made assumptions the architecture couldn't support, showed the teams weren't positioned to build toward that vision yet. So I cut scope to a shared baseline of licensing data, working with PMs who I knew would deprioritize anything demanding heavy per-team investment that could impact delivery against their individual roadmaps, exactly as had happened in the projects before I joined. The constraints shaped the MVP but the vision shaped its architecture, so every simplification was made in a direction the future designs could extend.
Process & Execution
- Research everything: Including cybersecurity, SaaS subscription best practices, and competitor examples. I consulted with other designers within my organization to understand how and why previous decisions were made in the platform and to gain context about the short- and long-term product road-maps.
- Cross-functional conversations: Working with UX researchers, product managers, engineers, support teams, sales, and account executives.
- Ideate and wireframe: Start with sketching, then move to wireframes, making sure to consider user flows and information architecture.
- Gather feedback: Rounds of design review with stakeholders to ensure requirements and needs were met.
- Content planning: I worked with the UX writing team to review content and gather early input on terminology.
Research & Analytics
I conducted exploratory research and facilitated user interviews alongside a UX researcher to gain insight into the problem and user expectations.
- Competitor analysis of licensing management and cybersecurity platforms.
- Moderated, structured user interviews with mocks.
- Informal, unstructured interviews with internal stakeholders such as customer success.
- Analysis of client behavior on the existing site using web analytics tools (Domo, Pendo).
Core Principles
Automation and reduced work
- Remove the burden of manual work when monitoring and maintaining many licenses
- Automate functions like removing duplicate assets, flagging ghosts and stale assets, and more
Clarity and ease of use
- Provide relevant help and tips
- Informative and functional
- Quick access to contact help
Personalization
- Show information and options that are meaningful to the user
- Allow users to customize expiration alerts to match their company's purchasing and renewal timelines
- Ability to have usage rules and custom caps
Visibility and easy access
- Platform and product level information availability
- Compliance is the primary user concern








