Product Dogfooding in Software Development: A Quick Guide (+Best Practices)

Product Dogfooding in Software Development: A Quick Guide (+Best Practices) cover

Dogfooding means eating your own dog food.

Wait! What?

What does it have to do with product management or product design?

That’s what you’ll find out from this article.

Let’s dive in!

What is product dogfooding?

Product dogfooding is using your own product or service to solve real-life problems, just like your customers would.

The goal of this practice is to test the product design thoroughly for bugs and usability issues before launching it to the public.

What is the origin of the term dogfooding?

Nobody is entirely sure.

It may have been the 1970s TV commercial in which the actor claimed Alpo dog food was so good that he fed it to his own dogs. Or perhaps the president of Kel Kan Pet Food who anecdotally used to eat a can of their dog food at meetings.

The first known use of the term in the management context was in 1988, when Paul Maritz, a Microsoft manager, sent an email titled “Eat your own Dogfood” to increase internal usage of Microsoft products.

What are examples of dogfooding?

Dogfooding is a common practice in tech, and lots of companies use it to improve their products:

  • Userpilot uses its own tools to onboard and guide users.
  • Google uses it to test new versions of its own products, including new operating systems and popular office apps.
  • Facebook refined its Android app by forcing employees to switch to this operating system.
  • Lyft requires its staff to spend at least 4 hours as a driver to better empathize with users and enhance the user experience. This includes their CEO, Logan Green.
  • Wix has built its website using their own product.

Why should companies eat their own dog food?

If you’ve got a task to complete, say send an email, design a visual, or create an onboarding flow, and your product does exactly that, it makes perfect sense to use it instead of competing tools.

However, there are other reasons why your teams should use the products that they build.

Identifies bugs and issues with the product early on

Tech giants, like Garmin or Microsoft, have very robust quality assurance processes. And yet, there’ve been numerous cases when they released half-baked products riddled with bugs.

That’s because no testing regime can replicate the real-life conditions in which real customers use the product.

Dogfooding can help you reduce the risk of releasing buggy products and avoid usability issues.

If your teams have to use the product to solve their own daily problems, they’re more likely to identify issues that may sneak through quality control in a lab environment.

Builds customer empathy

What’s the best way to understand your customer needs, pain points, and motivations?

Put yourself in their shoes by using the product to complete the tasks that they have to tackle in their everyday lives.

So it’s safe to say that dog food helps organizations develop their customer empathy and gain a deeper understanding of the ‘why’ behind their behaviors.

Improves the customer experience with a company’s product

Ultimately, dogfooding helps teams build better products and deliver a better customer experience.

Think about it:

If you can understand your customers, their needs, and daily struggles, you’re in a position to build a product that addresses their issues. For example, this may mean developing the features that they desperately need to achieve their goals.

There’s more to that.

Lack of functionality isn’t always the main user frustration. Not being able to use the existing features because they crash constantly or they’re difficult to find in the cluttered UI is, though.

Dogfooding helps you prevent such issues because they have a chance to spoil the experience for your users.

How to implement a product dogfooding program in your company?

If you want to give dogfooding a shot, here’s how to set up an employee product testing program at your company.

In a nutshell, it follows the same process as any other type of testing or experimentation.

Recruit employees for the internal beta testing

To start with, recruit testers from across the organization.

You want to have participants from different departments involved in the product development process: product management, customer success, marketing, and sales. This will allow you to gain different perspectives on the product.

Don’t stop there.

Involve employees who have absolutely nothing to do with your product. That’s necessary to avoid the product team‘s biases affecting the results. You want to learn how the product really works and not how your testers believe it works or should work.

Decide how the feedback will be collected

How are you going to collect the feedback on the product?

There are plenty of options for SaaS products:

  • Surveys – delivered in-app or by email
  • A feedback widget or a dedicated email address to collect passive feedback
  • Interviews and focus groups to gain in-depth qualitative insights
  • Session recordings to optimize the UI
  • In-app user behavior tracking to find patterns and trends in user interactions
Product dogfooding: collect usage data
Product dogfooding: collect usage data through heatmaps.

Provide onboarding to the participants

To emulate real-world product experience, provide your testers with the same onboarding as your customers.

This kills two birds with one stone.

First, you teach them how to use the product so that they can test it thoroughly without relying on the customer support team or software developers for guidance.

Second, you also test how good your onboarding is at activating users and driving feature adoption.

Product dogfooding: onboard participants
Product dogfooding: onboard participants.

Analyze the feedback and iterate on the product

Feedback analysis is the next step.

Depending on your research methods this could be by:

  • Tagging and grouping similar survey responses.
  • Using AI tools to identify patterns in qualitative user feedback and following up with respondents for further insights.
  • Analyzing session recordings and heatmaps for usability issues.
  • Inspecting support tickets and bug reports.
  • Applying different analytics tools to obtain specific insights from product usage data, like funnel and paths analysis to identify friction points.

Keep testing as you’re implementing improvements to assess the impact of the changes.

What if you’re not getting any valuable insights? Review and adjust your testing protocols.

Product dogfooding: analyze product usage
Product dogfooding: analyze product usage.

Best practices when eating your own dogfood

To wrap it up, let’s look at some of the best dogfooding practices and tips:

  • Make using your company’s products a part of the organizational culture.
  • Don’t rely on dogfooding as the only testing method. Combine it with other testing types, like beta testing and testing by the quality assurance department.
  • Turn it into an ongoing process, not a once-and-done activity.
  • Frustrating as it might be for your staff, don’t let them use alternative products. If they have an option, they may prefer a solution from a competing company that they’re familiar with.

Conclusion

‘Product dogfooding’ may sound entertaining but it’s actually a serious testing process that can help you better understand your users and spot issues with the product before you launch it.

Would you like to see how Userpilot can help you implement a dogfooding program in your SaaS?
Book the demo to find out more about our feedback, analytics, and user onboarding features.

previous post next post

Leave a comment