Analyze open-ended survey responses

Find the themes without letting the model invent them. The anti-fabrication clause is doing most of the work.

When to use it

Open-ended responses where you want the themes that are really there, not the themes you were hoping for.

What it prevents

Invented consensus. Asked for themes, a model will find them — even in three unrelated responses. The two-mention threshold and the “say so if there is no theme” clause are what keep the analysis honest.

The prompt

Copy this, then adapt it
Identify the recurring themes in the survey responses below.

### Output format
A markdown table with three columns: theme, number of responses mentioning it, and one verbatim quote.

### Requirements
- A theme needs at least two responses. Do not report a theme mentioned once.
- Quote responses exactly. Do not paraphrase inside the quote column.
- If the responses share no theme, say so rather than manufacturing one.

### Responses
"""
1. Setup took me two days, the docs assume too much.
2. Love the product but onboarding was rough.
3. Fast, does what it says.
"""

Instant checks

9 key structural practices evaluated locally

100% Coverage6/6
  • States a concrete task

    Passed
  • Avoids vague language

    Passed
  • Specifies an output format

    Passed
  • Avoids dangling references

    Passed
  • Separates data from instructions

    Passed
  • Avoids over-aggressive phrasing

    Passed
Not a claim — the real checker, run on this prompt, in your browser.

Why each part is there

Every section of that prompt exists because a specific failure happens without it. These are the checks it passes, and what each one is protecting you from:

How to adapt this one

Paste your responses and keep the two honesty clauses: a theme needs at least two mentions, and “if there is no shared theme, say so”. These are the entire prompt. A model asked for themes will always find them, even in unrelated responses, so the value you add is the threshold that stops it manufacturing a consensus that is not in the data.

The mistake this prompt avoids

Trusting themes with no threshold. Ask for the patterns in open-ended feedback and a model will confidently report three, whether or not three exist — pattern-finding is what it does. Without a minimum mention count and permission to find nothing, you get an analysis that confirms whatever the responses vaguely gestured at — indistinguishable from confirming what you hoped to hear.

A variation

Have a rating or a segment alongside each comment? Ask for themes split by that dimension — “separate the detractors from the promoters” — rather than pooled. The most useful finding in survey data is usually that the same feature is a complaint in one segment and a selling point in another, and pooling averages it into invisibility.

Check your version

Once you have adapted it, run it through the checker. The same nine checks that graded this page will grade yours, free and in your browser — paste it in, or build one from scratch by answering a few questions.

More analysis prompts