2023 · Shipped · Product Manager II, Data Intelligence & Analytics
Data migration & payments product at Classy / GoFundMe
0-to-1 product that drove $15M+ in transactions and 4–10% retention. Plus a stealth LLM search alpha for 4,000+ customers.
The problem
Nonprofits switching platforms get punished. Their existing donor data is locked in spreadsheets, in legacy CRMs, or in the platform they’re trying to leave. Recurring donations break in the cutover. Conversion drops. Stewardship goes cold. The platform that wants to acquire them takes the cost in churn risk; the nonprofit takes the cost in revenue and donor trust.
I was a Product Manager II at Classy (acquired by GoFundMe in 2022) on the Data Intelligence & Analytics team. The migration story was the wedge: the team that solved it well would unlock a meaningful slice of the SMB nonprofit market. The team that fumbled it would teach nonprofits that switching platforms isn’t worth the damage.
Who it serves
Nonprofits in active migration. The Director of Development who wants to switch platforms but can’t lose her recurring-donor base. The major-gift officer whose portfolio is stored in a system nobody has admin credentials for anymore. The donor whose monthly gift is supposed to keep showing up regardless of what backend the org runs.
How it helps
I led a 0-to-1 data migration and payments product that treated the cutover as a product surface, not just an ops project. Built around two principles: never break a recurring donation, and surface the migration progress to the nonprofit so they can communicate confidently with donors. The leverage point was designing the donor-facing communications and error states ahead of cutover, not patching them during.
The PM job was mostly translation. Systems engineers cared about data fidelity. Ops cared about timeline. The nonprofit cared about not looking bad in front of their donors. Those are three different definitions of success, and none of them are wrong. My job was finding the design that satisfied all three without treating any of them as secondary.
The easiest way to lose a nonprofit customer is to make them look bad in front of their donors. Build the migration around that fear and you stop optimizing the wrong things.
In parallel, I led a stealth AI/ML initiative post-merge: enhanced the cloud data pipeline and built an LLM search experience that shipped to alpha for 4,000+ customers in six months. That thread runs through everything I’ve built since. Applied AI for product surfaces that have to work, not just demo well. NPS lifted 20 points on the lowest-performing persona. Support caseload dropped 68%.
What it does
- $15M+ in transaction revenue moved through the new migration product
- 4–10% retention lift on migrated accounts vs. baseline
- LLM search alpha to 4,000+ customers in a six-month window, with NPS +20 and support caseload -68%
- A reworked financial reconciliation feature that lowered support caseload and lifted the lowest-NPS persona
- A redesigned reporting UX aimed at $10M+ in account retention, validated through user research, usage data, iterative prototyping, and customer success collaboration
What I learned
When the engineering project and the product project are the same project, the PM job is mostly translation between systems people, ops people, and the customer surface. The leverage point is designing communications and error states before the cutover, not patching them during. That sounds obvious. It almost never happens.
The AI work taught me what I now call the orchestration discipline. Demo-quality AI is easy. Production AI (especially on the customer-trust surface) requires knowing exactly what the system can promise, what it can’t, and where the human has to step in. That discipline shows up in every AI tool I’ve built since, including Valet and Floodplain.
The hardest conversations weren’t with engineers or execs. They were with nonprofits who had been burned before. A bad data migration is an organization’s nightmare: donors lose confidence, recurring revenue drops, and the switch that was supposed to make things better makes them worse for a year. The product had to carry an implicit promise: we will not make you look bad. That promise shapes every design decision downstream. If you don’t hold it explicitly, you optimize for the wrong things.
Status
Shipped. My time at Classy and GoFundMe spanned Jun 2020 (Associate PM & Senior Program Manager at Classy) through Jan 2024 (PM II, Data Intelligence & Analytics post-acquisition). I left to join Candid in mid-2024.