Whether they're saying it "kinda sucks", "officially sucks", or that it is a full-on #McFailure, it's easy to find tweets like this for just about any app. With few details and lots of negative attitude, this sort of message is always discouraging to the team working on the app in question.

That doesn't mean it's reasonable to just ignore negative feedback, however. Unless you know why the user is frustrated and a fix to their problem is just waiting to be pushed in the next release, all user feedback is always an opportunity to learn something.

A positive spin

First, it's important to have the right mindset when approaching negative user feedback. No matter how strongly you identify with the software project in question, the comments aren't about you as a person, so be mindful of your emotional reaction when you're reading it. It's very common to feel angry, frustrated, and even hurt. Try to find a balance between taking the feedback so seriously that it upsets you, and discounting it to the point that you lose motivation to understand what's going on.

If your project is new or under-resourced (as many so many often are), remember that these kinds of messages are a sign that people care about what you're doing. They are trying to use your software. It excites them enough that they're even trying to tell you when it disappoints them. They may not have the vocabulary, time, design understanding, or technical acumen to explain what they dislike, but they want you to hear them so you have a chance to make things better.

Tactical advice

So, how do you actually go about turning negative feedback into useful insight? Here's a set of questions and ideas to get you started.

Provide a forum

Do users have a place to go when they want to kvetch or kvell in the first place? Feedback channels don't have to be elaborate or high-maintenance; while it's great if your team can support online user forums localized in 23 languages, a simple email address that is prominently advertised on your website is an effective place to start.

Pro tip: don't just tell users to file a bug on GitHub. That's a great way to get highly-technical users to submit feedback, but a lousy way to get insights from just about anyone else. Social-media sites like Twitter and Facebook can be an effective way to connect with users, although it's important to try and help users understand the risks that such platforms pose. (For example, it's a bad idea to post publicly on Twitter about using VPN software from a country where such programs are prohibited.)

Muster the troops

Making sense of user feedback is critically important to software projects, because your users' opinions will ultimately determine the success of your software. (If they don't like it, eventually they'll find a better alternative; if they do like it, they'll tell their friends and your userbase will grow.) Monitoring and analyzing user feedback is therefore worth investing non-trivial amounts of time and energy.

Do you have one or more team members who are responsible for this work? Do those people actually have time to engage with the data that is coming in? Do they have time during team meetings to share their findings? Does the team use this information to help it prioritize near- and long-term work?

Gather a baseline

If you have a software project that people outside the team are using, it's past time to start gathering data on what those users are saying about it. Even if your userbase is small and the feedback is mostly positive, an accurate picture today will provide the basis for future evaluation.

What are the top known issues? Are you trying to keep track of individual pieces of feedback, or have you leveled up to clustering pieces into related groups? Are there clusters of complaints that can't be explained by any known bug? How many users are providing feedback: do you think it's ten different people saying similar things, or one person trying to reach out ten different times with the same issue?

In addition to your official feedback channel, don't forget to monitor your project's social-media accounts on a regular basis. Even if you don't think of it as a way for users to send feedback, they almost certainly do. And there's nothing more demoralizing to a user than landing on a Facebook page and finding that there are complaints that have been ignored for months (or years!) on end.

Track comments over time

You don't have to instrument your app or gather analytics to get longitudinal data. Checking in on your feedback channels on a regular basis (daily, weekly, or monthly, depending on the size of your userbase and the volume of feedback) will help you build a picture of how you're doing, and provide a "user heartbeat" to help motivate and direct the team's efforts.

Are you monitoring how many new complaints you get in each thematic cluster per month? Did your latest update cause complaints to go down, or have they remained constant? Are your development priorities successfully addressing top complaints over time?

Engage for information & community

The tweets quoted above are an extreme example, but many users provide feedback that isn't exactly useful. After all, how can you debug a problem if you don't even know what version of the software the user is running? Depending on the feedback channel through which the user connected, you may be able to reach out and ask for more information.

When a user submits feedback (even the inactionable kind), do they get a response thanking them for taking the time to share their thoughts? Does your project website have a page describing what information makes a good bug report?

Just a brief automated reply can make your users feel like you care about them, even if you don't have the time to write them personally. "Thank you so much for your feedback, it means a lot to us. We will do our best to read it soon. We are busy trying to ship the next version of the software, so probably can't reply in detail. But if you're willing to go the extra mile for us, would you consider sharing more detailed feedback using these instructions?"

Invite critics to a beta-testing group

This may be beyond the organizational means of many small projects, but: have you considered starting a beta-testing group? Some distribution platforms like Google Play have features to make this easier. Beta-testing can help you prevent huge waves of negative feedback by providing more eyes on software updates, and can serve as a great way to channel the enthusiasm of some of your biggest user critics. We work with a number of organizations that connect with users interested in privacy-preserving software, so let us know if you need help connecting with more potential users.

It's all about the empathy

At the end of the day, we all care about how our users feel. We may get frustrated when they chew us out for honest mistakes, or berate us for problems that are ultimately out of our control. But these moments are always an opportunity to put ourselves in their shoes, try to see our project through their eyes, and learn our craft anew.

Do you do a great job channeling your users' feedback into amazing software improvements? Are you struggling and looking for more help than the above ideas provide? Please get in touch.