Dogfooding: How Putting Yourself in the User’s Shoes Changes the Way You See Your Product
Leverage this important tool to become a better Product Leader
I won’t sugar-coat it: Ancestry’s messaging experience was not working well. Deliverability was poor. Delays were common. It was one of the most complained-about parts of the Ancestry service. Our teams were working on improving it, but progress was slow.
Things changed when the Product Manager who was working on messaging turned to dogfooding to speed things up. She stopped her cross-functional team from using Slack and moved them exclusively to our messaging service. Faced with the pain of having to use the Ancestry tool for work communication, the team gained a greater understanding of the problems with it, as well as a better idea of how to solve them. They finished the project quickly, allowing us to retire the old messaging service.
This is the power of dogfooding, the practice of using your own products. Dogfooding forces you to experience a product as your users do—not just in a theoretical or roadmap sense, but in a real, practical, everyday sense. When you use your product yourself, you'll find blind spots that you never noticed before and gain insight into how to address them.
Seeing It Again for the First Time
A common pitfall that we fall into when we get really close to our product is forgetting what it's like to be a new user. This makes it easier to overlook issues that might be obvious to an outsider. When you go into a product for the first time, without all of the context that you’ve gained from building it, you see it with fresh eyes as a customer would experience it.
One of the challenges with the Ancestry product is that the more time you invest in it, the better it gets. Every new employee gets an account, which they add to over time, building deeper and deeper trees and adding more and more memories from their family. That’s the beauty of the product, but it’s also a dangerous thing, because in the process, you lose your sense of what it’s like to start from the beginning.
As an experiment, a small group of us decided to create a new account and start the family tree building as a brand new user would experience for the first time from scratch. As I was testing out the tree-building feature again, I ran into an issue that turned into a huge blocker. I couldn't immediately remember the names of my grandparents, since their names were not officially anglicized. I was stuck. I could name my two dozen aunts and uncles and dozens of cousins, and I should have been able to build a rich tree. However, I couldn’t input any of the names I did have, because the software required me to provide grandparents' names first, as a starting point. There was literally no way to advance beyond the new user flow.
This was a small thing, and I reported it, but the experience was a useful reminder. Sometimes we get so deep into our experiences that we forget what it’s like to start using our products for the first time. We forget that not everyone has the same knowledge and understanding that we do.
The new user experience is absolutely critical, but it often gets overlooked because we’re too deep in the weeds. One thing I encourage you to do is to sign up for your service again, using a brand new account. Do this every few months to stay up-to-date on the experience, and to remind yourself that there's always more to learn and improve.
Customer empathy means being able to understand what it feels like for others to use your product. It means experiencing the problems firsthand, whether the irritation of having to type dozens of numbers into your tax software or the frustration of hitting a dead-end. What are the pitfalls and challenges that people run into? Does the product feel easy or hard? What makes the product sticky?
The thing about dogfooding is that it’s never completely objective. We always know what’s going on behind the scenes: our motivations, our technological limitations, and our roadmaps. But dogfooding isn’t just about finding issues. Using our own product reminds us that what shows up in a spreadsheet or PowerPoint presentation is not theoretical. It touches people and has a real impact on them.
Having customer empathy means putting yourself in the shoes of another and experiencing the product from their point of view. It’s about looking outside yourself and seeing through their eyes, without the debugging tools and the access to engineers. If you want to have a better understanding of the customer experience, both the good and the bad, you have to use your product just like any other customer would.
Enabling a Global Mindset
One of the challenges with working in a tech environment is that we automatically have the best technology at our fingertips. Everyone has a really nice MacBook or ThinkPad, and we carry the latest, most expensive phones in our pockets. As fun as that is, it can also be detrimental, because it limits our perspective. We're building products for people who may not have computers, or phones worth a thousand dollars apiece, and if we forget that, we risk leaving them out of the equation.
One day at Facebook, Mark asked his executive team to switch to Android phones. The amount of pain and gnashing of teeth was pretty evident, since learning a new operating system is never an easy task. But we also understood it was necessary; Android users made up the vast majority of our global user base, and we had to be able to experience the product from their perspective.
Within weeks of switching to Android devices, even very high-end ones, we had found a plethora of bugs and issues, and built so much more empathy for those on different operating systems. There were so many problems, things we would often hear about but had never experienced within the product every day. By dogfooding, we felt those issues firsthand, which gave us more motivation to address them.
Sometimes we think the whole world is made up of people just like us. In reality, it’s quite different. Our perspectives are often limited by the places we live, the technology we use, and the issues we run into in our day-to-day lives. Dogfooding can give us a different viewpoint, enabling us to see how our products affect people who are different from us.
Being an avid dogfooder ensures that you understand the product you're working on, and that you feel what your users do. Employed well, it can help you identify issues, gain insight into the problems you are trying to solve, and, ultimately, build better products.
I joined Marketplace ~ 2 years back while you were still at Meta. When I checked out the feedback group , I used to see you regularly post about the experience and used to wonder how come you had the time to prioritize this over other things on your plate. However fast-forward to today, I make it a point to use the product on a very regular basis and understand how valuable this exercise is! Using the product has given me so much more insights without looking at the actual code. Thank you for setting up that culture and leading by example!
Thank you so much for sharing such a great insight!
As I'm building a product and dogfooding by ourselves, this article really resonated with us!
Here's a list of quotes that I really resonated with and my notes:
* Dogfooding forces you to experience a product as your users do—not just in a theoretical or roadmap sense, but in a real, practical, everyday sense.
* A common pitfall that we fall into when we get really close to our product is forgetting what it's like to be a new user. This makes it easier to overlook issues that might be obvious to an outsider.
* One thing I encourage you to do is to sign up for your service again, using a brand new account. Do this every few months to stay up-to-date on the experience, and to remind yourself that there's always more to learn and improve.
=> Note: people often forget about this!
* We're building products for people who may not have computers, or phones worth a thousand dollars apiece, and if we forget that, we risk leaving them out of the equation.
=> Note: have a global mindset always.
Thank you so much again!