The open-ended question is where the real answer lives. "Anything else you'd like to tell us?" is the box people use to explain why they gave you a 6, what almost made them cancel, and the thing your rating scales never thought to ask about. And in most companies, nobody reads it.
Not because the team is lazy. Because reading doesn't scale, and everyone quietly knows it.
Why the good stuff goes unread
Do the math on a normal survey. Five hundred people respond, you asked three open-ended questions, and now you have 1,500 free-text answers sitting in a spreadsheet. If you read and tag each one properly, that's 30 to 60 seconds apiece. Call it a week of full-time work for one person, doing nothing else.
Nobody has that week. So what happens instead is the skim. Someone scrolls the column, finds one nice quote for the deck, maybe one angry one to wave around in a meeting, and the other 1,498 answers get filed and forgotten. The rating questions get a chart. The text gets a shrug.
Which is backwards. The 0-10 score tells you what happened. The paragraph underneath tells you why, and why is the only part you can act on.
The old way: coding by hand
The rigorous method for turning text into insight is qualitative coding, and it's genuinely good. You read a batch of responses, notice recurring ideas, and build a codebook: a list of themes like "pricing confusion," "slow support," "loved the onboarding." Then you go through every response and tag it with the themes it mentions. Count the tags, and now you know that 40% of your detractors mentioned support wait times and only 8% mentioned price.
That's the gold standard. It works beautifully for 50 interview transcripts. It falls apart at 500 survey responses, for a few reasons:
- It's slow. A codebook plus tagging a few hundred answers is days of work, and it has to be redone every time a new batch comes in.
- It drifts. Two people tag the same answer differently. One person tags differently on Friday than they did on Monday. Consistency is hard to hold across hundreds of judgment calls.
- It doesn't fit the calendar. Insight that takes a week arrives after the decision it was supposed to inform. So it stops getting done at all.
The result is a bad trade almost everyone makes without noticing: they stop asking open-ended questions, or they keep asking and stop reading. Either way, the richest data you collect gets thrown out.
A workflow that actually holds up
Here's the process I'd follow now, whether you do it by hand or hand the heavy part to software.
1. Clean before you count
Strip out the junk first. "n/a," "none," "asdf," and the people who typed a single period to get past a required field. Straight-liners and empty answers don't carry signal, and leaving them in makes every theme count look noisier than it is.
2. Let the themes come from the data
Don't start with the five buckets you assume people care about. You'll only ever confirm what you already believed. Read (or have a model read) the responses first and let the categories surface on their own. The theme you didn't expect is usually the one worth the survey.
3. Separate theme from sentiment
These are two different questions. What is the person talking about (the theme) and how do they feel about it (the sentiment)? "Your pricing is refreshingly simple" and "your pricing is a nightmare" are the same theme, opposite sentiment. Collapse them together and you'll think price is a problem when half your customers are complimenting you on it.
4. Count, then rank
Once every response is tagged, the frequencies tell you where to spend attention. Ten people mentioning the same confusing setup step is a roadmap. One eloquent complaint is a data point. Both matter, but they don't matter equally, and a good tally keeps you honest about which is which.
5. Keep the quotes attached
"23% mentioned onboarding friction" is a start, but it doesn't move anyone. The two or three verbatim answers underneath it do. Always be able to jump from a number back to the actual sentences that produced it, so you can read the specifics and paste a real quote into the deck instead of a paraphrase.
6. Cut the text against the numbers
A theme count on its own is useful. A theme count split by your rating question is where the decisions hide. Take your NPS or CSAT score and ask what the detractors are saying versus the promoters. Nine times out of ten they're not talking about the same things at all. Your promoters rave about one feature, your detractors keep hitting the same wall, and the wall is your roadmap. The number told you the score dropped. The text, sorted by score, tells you which sentence to fix.
Write questions that are worth analyzing
Half the reason open-ended data is painful to analyze is that the question was lazy. "Any other comments?" produces a graveyard of "no," "good," and "keep it up." Answers you can't theme because there's nothing in them.
Ask something specific and you get something specific back:
- Instead of "Any feedback?" ask "What almost stopped you from signing up?"
- Instead of "How was your experience?" ask "What's the one thing we could have done better today?"
- Instead of "Comments?" ask "If you could change one thing about the product, what would it be?"
Specific prompts also cut down on nonresponse. People skip vague questions because they don't know what you're fishing for. Give them a real question and more of them answer, and the answers are ones you can actually group. Also resist the urge to add a fourth and fifth open-ended box. Past two, completion rates fall off a cliff and you end up with more blanks to wade through, not more insight.
Where AI actually earns its place
Every step above that involves reading text is now something a language model does well: grouping answers into themes, judging sentiment, pulling representative quotes. This is the one job I'm happy to hand off, because it's the job humans do inconsistently and hate doing. A model tags the two-hundredth response with the same standard as the first, and it does it in seconds instead of days.
It's also why we built response analysis into BionicForms directly. Your form collects the answers, and the analysis reads all of them, groups the free text into themes, tags sentiment, and lets you ask a plain-English question like "what are people saying about pricing?" and get an answer pulled from the actual responses. That's on the $5/month plan, with unlimited responses, because charging people per response just teaches them to collect less feedback, which is exactly the wrong lesson.
One honest caveat: read a sample yourself before you trust any summary, machine-made or not. Pull 20 or 30 raw answers and check that the themes match what real people actually wrote. The model is a fast first pass, not a reason to stop looking at your own customers' words.
The point
Open-ended questions aren't the problem. Ignoring the answers is. The reason teams ignore them was always practical, not philosophical: reading hundreds of paragraphs didn't fit in a normal week, so it didn't happen. That constraint is mostly gone now. Which means the excuse is gone too. If you're going to ask people to write you a paragraph, owe them the courtesy of reading it, or of using something that will.