🧭 The start!
PerceptInsight initially started as an internal, extensively to save costs. Instead of depending on other tools in the market like Mixpanel, Amplitude etc, Pi was built as an alternative.
“Built by devs, for the product folks”
⚠️ Function > Experience
“Despite the powerful engine under the hood, users struggled to get value unless they were power users. Errors were silent. UI lacked clarity and visibility of data which was the key"
UX pain points: Inconsistent flows, lack of feedback, cryptic filters.
Product issues: No design system, non-scalable layouts
Dev friction: Lots of UI debt, hard to add new features cleanly.
v1.0
In the v1.0 it was all about refining the flows, creating basic components. The Idea was to pick and re-design different sections of the dashboard. To start off it was the Brand logo, Colours, Fonts, Navigation, Zero states, Error Handling and more. A quick onboarding to integrate with percept and start generating reports.
🛠️ The Fix, Design Enters — Untangling, Structuring, Rebuilding
“We didn’t just ‘add polish’—we helped the product grow up.”
Design system: Created reusable components (charts, filters, toasts, modals, tables).
Audit & Mapping: Documented flows, identified UI patterns, grouped features.
UX re-architecture: Clear entry points (e.g. Events, Funnels, Retention), redesigned layouts, added states (empty, error, loading).
Scalable patterns: Made the product ready for PMs, analysts—not just developers.
Components
Reusable components: filters, charts, selectors, modals
Shared tokens: type scale, spacing, colors, states
Built with dev-collaboration for easy adoption
Reduced design debt for future features
🔁 Impact: Quicker iterations, more consistent UI, fewer bugs
Impact of v1.0
Onboarding completion rate increased by 40%
Reduced support tickets by 60% (especially around Funnels and Retention)
Engineers adopted the design system for faster feature rollouts