Designing Feedback Mechanisms
The feedback request is worth making only when its answer can actually improve the system. A choice that resolves a real uncertainty is both a learning signal and a reason for the request to exist.
Why a Good Question Can Still Fail
Designing an AI application does not end when the model produces an output. A second design question is how the application should learn what users actually want. This article focuses on two parts of that question: when a system should collect feedback from users, and how a comparison between outputs can turn a user's choice into a useful training signal.
Imagine you have just finished exporting a report in a spreadsheet tool. Before you can close the window, a large dialog box fills the screen and asks you to rate the export feature on a scale of one to ten. You have no interest in rating anything. You want to close the dialog and get back to your day. Most people in this position click the close button as quickly as they can, and the rating they would have given is lost. The request for feedback was made, but the way it was made taught the user to resist it.
The example makes a point that the rest of this article builds on. Feedback is valuable to the people building a product, but collecting it has a cost paid by the user, in attention and time. The source frames the problem as more than whether to gather feedback. It is also a question of when and how to do it. A system that asks at every step would be tiresome, while a system that never asks would miss chances to learn. The goal is to find the moments where asking is worth it and to ask in a way that does not get in the way of the work.
When Uncertainty Becomes a Reason to Ask
A model's uncertainty about an action can be used as a reason to request user feedback, with the goal of increasing its confidence about what to do.
The purpose of asking is stated directly in the source: the feedback helps increase the model's confidence about what to do. The user's answer resolves the ambiguity that the model could not resolve on its own. This means a feedback request is a response to a specific gap in the model's knowledge, not a general request for opinions. A system that asks a user about everything is not making a targeted decision about uncertainty at all.
The branching logic is the heart of this idea. When the model is confident about which action the user wants, it can act directly. When it cannot tell which of several actions the user wants, the feedback path becomes the reasonable choice. The flowchart below traces both branches and shows what changes once the user responds.
Read the diagram as a statement about purpose. The feedback branch exists to resolve a specific uncertainty, so a request that appears when the model is already confident is asking for something the system does not need. The request is justified by the gap, and the gap is what should trigger it.
Two Candidates Instead of One Rating
When a model cannot tell which of several actions a user wants, one option is to output candidates side by side and let the user choose. This is why side-by-side presentation matters in feedback design. Showing two candidate outputs turns an open-ended question into a simple choice. The user is no longer asked to judge a single output on an abstract scale. They are asked to pick between two concrete options.
The choice itself is the signal. The source describes the user's choice between two outputs as a comparative signal. A rating of one output tells the system how that output scored in isolation, which depends heavily on the user's mood and the scale they happen to use. A pairwise choice tells the system which of two options this user preferred right now, which is a more direct record of preference.
| Aspect | Single rate-this-output prompt | Two-candidate comparative prompt |
|---|---|---|
| What the user does | Scores one output on a scale | Chooses one of two candidate outputs |
| What the system records | A score for a single output | Which candidate was preferred |
| Effort for the user | Must translate a feeling into a number | Recognizes and picks between two concrete options |
| Kind of signal | Absolute judgment of one output | Comparative signal between two outputs |
| Fit for uncertain choices | Weak when the model does not know which action is wanted | Directly targets a choice between candidate actions |
Single-output rating versus side-by-side candidate comparison
From a Choice to Preference Finetuning
The source states that comparative signals such as the user's choice between two outputs can be used for preference finetuning. The idea is that the system accumulates the choices users make and uses them to adjust the model so that it moves toward the kind of output users pick. Each recorded choice is a small piece of evidence about what people prefer, and finetuning is the step that uses that evidence to change the model.
The path from interface to model has three stages. First, the interface presents two candidates. Second, the user's choice is recorded as a comparison between them. Third, those recorded comparisons are used in finetuning. The source names a production example of this comparative evaluation, but it does not describe that example in detail, so the specific pipeline used in any real product should be checked against that product's own documentation rather than assumed from this overview.
The feedback request is worth making only when its answer can actually improve the system. A choice that resolves a real uncertainty is both a learning signal and a reason for the request to exist.
When Asking Is Worth the Wait
Asking is a design choice with conditions, not a default. Two conditions follow directly from the source. The first is that the model must face a real uncertainty about which action the user wants. The second is that the request must not impose a cost the user is unwilling to pay. Latency is the most concrete form of that cost. Every moment the system waits for a response is a moment the user is not getting the result they came for.
Latency enters the design in two places. Generating two candidates instead of one may add to how long the user waits, and that is the assumption the source asks designers to check. Waiting for the user's own answer also takes time. Asking is reasonable when the value of resolving the uncertainty outweighs the delay it introduces. When the uncertainty is small, or when the delay would be noticed and resented, the better choice is usually to act without asking.
Before deciding to ask, write down two things: what specific uncertainty the request would resolve, and how long the user would wait before they can resume work. If you cannot name the uncertainty, the request is probably a general request for opinions.
Hints
- The source says the feedback request is a response to a specific gap in the model's knowledge.
- Latency is the delay the user experiences before the work can continue.
What Makes a Mechanism Seamless
Seamless feedback collection means gathering opinions through a channel built into the user's workflow, so that giving feedback needs no extra work.
The central idea is that feedback should fit inside the user's existing path, not be treated as a separate errand added on top of it. A user who is already doing a task should be able to offer an opinion about that task without leaving it, opening another screen, or filling in a long form. If the mechanism asks for work that the user did not plan to do, it is no longer seamless, even if the question it asks is a good one.
The source makes a further point. Seamlessness is a property of where and how the request appears, not only of what it asks. Two identical questions can produce very different results depending on whether they arrive at a natural pause in the work or interrupt a step in the middle of it. Placement and timing matter as much as wording.
| Dimension | Seamless prompt | Disruptive prompt |
|---|---|---|
| Placement | Built into the existing path at a natural pause | Takes over the screen or interrupts a step in progress |
| Effort | Answering is light and needs no extra screens or forms | Requires a long form or an unplanned task |
| Timing | Appears when the work has reached a stopping point | Appears in the middle of a task |
| Skipping | Easy to dismiss, returning the user to work with nothing lost | Dead ends, repeats, or penalizes the user for skipping |
| Typical result | Users answer honestly because the choice is theirs | Users click away and the feedback is lost |
Properties of seamless versus disruptive feedback prompts
Tracing a Request Through the Workflow
To judge whether a request interrupts the work, follow it step by step. The source traces one feedback request from the moment the user finishes a task. Most of the flow is the user's own work, and the feedback option is a side path the user can take or leave. The sequence below shows the order of events for the spreadsheet example, with the skip branch included.
Read each branch as a question. Does answering require leaving the work? Does skipping return the user to the work at once, with nothing lost? If both branches pass those checks, the request is integrated and non-disruptive. If the skip branch leads to a dead end, a repeated prompt, or a penalty, the mechanism has moved from seamless to intrusive, even though the feedback option looks harmless on the surface.
Checking the Four Properties
The source names four conditions that a well-designed feedback mechanism should meet. Each can be checked on its own, which makes them useful as a review checklist when evaluating an existing prompt or planning a new one.
- Integration into the workflow: the request lives inside the user's existing path rather than as a separate errand.
- Low effort: answering takes little work, so the user does not have to plan extra effort for it.
- Non-disruption with easy dismissal: the request does not interrupt the work, and the user can skip it safely.
- An incentive for good feedback: the mechanism gives the user a reason to respond thoughtfully.
Ease of ignoring deserves special attention. A request the user can safely skip respects their choice, and the source notes that it tends to produce more honest responses. A user who feels trapped tends to answer carelessly or not at all, which makes the feedback less useful even when a response is recorded.
Redesigning the Export Prompt
Evaluating and redesigning the export rating dialog
A spreadsheet tool shows a full-screen dialog after every export that asks the user to rate the export feature from one to ten. Evaluate this prompt against the four properties and propose a redesign.
- 1Trace where the prompt appears
The dialog appears after the export finishes, but it takes over the whole screen before the user can close the window. The request sits on the user's path, yet it blocks the next action.
- 2Test the effort it demands
A one-to-ten rating requires the user to translate an impression into a number on an abstract scale. It is more effort than a quick yes or no, and it is unrelated to the task the user just finished doing.
- 3Test skipping
The user's only way to skip is the close button. The source's test asks whether skipping returns the user to the work with nothing lost. Here it does return the user to work, but the feedback they would have given is lost, and the prompt taught them to resist it.
- 4Check the uncertainty and placement
The prompt asks a general opinion rather than resolving a specific uncertainty about an action. It fails the test of asking only when a real gap exists.
- 5Propose a redesign
Replace the full-screen rating with an unobtrusive inline prompt shown only when the tool faces a real choice, such as two candidate outputs for the next step. Offer the two candidates directly, let one click record the preference, and make dismissal a single visible action that returns the user to the work at once.
The redesigned prompt is integrated into the workflow, requires one click, asks a specific question tied to an uncertainty, and can be skipped without cost. It passes the four checks that the original failed.
Mistakes Designers Make with Feedback
Common mistake Asking for feedback at every step
What it looks likeA tool requests a rating after every small action, whether or not the model was unsure of anything.
Why it failsThe source says a system that asks at every step would be tiresome. The request is supposed to answer a specific gap in the model's knowledge.
Do this insteadAsk only when the model faces a real uncertainty about which action the user wants.
Common mistake Treating a general opinion request as a learning signal
What it looks likeA prompt asks users how they feel about the product in general.
Why it failsThe source frames the request as a response to a specific gap, not a general request for opinions.
Do this insteadTie the question to the particular choice the model could not resolve.
Common mistake Assuming side-by-side candidates cost nothing
What it looks likeA team adds a second candidate output without measuring how it affects response time.
Why it failsThe side-by-side approach assumes that generating two outputs does not increase latency for the user, and that assumption must be checked.
Do this insteadMeasure the added wait before adopting the comparison design.
Common mistake Making dismissal costly
What it looks likeSkipping the prompt sends the user to a dead-end screen or shows the same prompt again.
Why it failsA request the user cannot safely skip makes them resist it, and the source notes that ease of ignoring tends to produce more honest responses.
Do this insteadLet skipping return the user to the work at once, with nothing lost.
Common mistake Judging a prompt by its wording alone when placement and timing decide whether it feels intrusive
Test Your Feedback Design
What do you think happens?
A feedback prompt appears when the user is done with a task, offers two candidate outputs, and lets them skip with one click. Does this prompt pass the test of skipping?
Reveal answer
Yes, skipping returns the user to the work with nothing lost
The source's test asks whether skipping returns the user to the work at once with nothing lost. A one-click skip that leaves the workflow intact passes that test.
Choose a feedback prompt you have seen in a real product, or the export dialog from this article. Trace where it appears in the workflow, rate its effort, check what happens when the user skips, and decide whether the request is tied to a specific uncertainty. Then sketch one redesign that passes all four properties.
Hints
- Start by asking whether the prompt appears at a natural pause or in the middle of a step.
- A redesign that fails only one property is still a useful improvement; name the property it fixes.
Key Takeaways
- A model's uncertainty about an action is a reason to request user feedback, and the purpose of the request is to increase the model's confidence about what to do.
- Presenting two candidate outputs turns an open-ended question into a comparative choice, and that choice can be used for preference finetuning.
- Asking is a design choice with conditions: the uncertainty must be real, and the latency the request adds, including the assumption that generating two outputs does not slow the user, must be checked.
- Seamless feedback fits inside the user's workflow with low effort, can be skipped without cost, and gives a reason to respond thoughtfully, so a prompt should be judged on placement and timing as well as wording.