ChatGPT logo

ChatGPT human-in-the-loop UX: clarify before you act

Updated July 6, 2026

ChatGPT uses human-in-the-loop in two ways. For actions it cannot complete — like restaurant reservations — it states the limit, asks structured questions, and hands execution back. For drafts it can produce — like email — it clarifies missing context first, renders the output in an editable card, and routes sending through Gmail, Outlook, or the user’s default mail app instead of auto-sending.

State limits, then ask structured questions

Restaurant booking request: ChatGPT explains it cannot reserve, then asks party size, time, cuisine, and seating preference.
Restaurant booking request: ChatGPT explains it cannot reserve, then asks party size, time, cuisine, and seating preference.

What works

  • The first sentence sets capability boundaries: help choosing, not booking on your behalf.
  • Clarifying questions are bulleted and concrete — users know exactly what to answer next.
  • Partial value (nearby examples) ships while waiting for details instead of blocking entirely.

What we would push on

  • Users may still expect one-tap booking if competitors add agentic reservations.
  • Location context appears below the answer; tying it to the clarifying prompt could reduce ambiguity.

Takeaway

When you cannot execute, say so in line one, then replace the missing action with a tight questionnaire.

Pattern: Human in Loop

Recommend, then hand off the final action

After constraints are answered, ChatGPT returns ranked options with photos and a map — but still cannot complete the booking.
After constraints are answered, ChatGPT returns ranked options with photos and a map — but still cannot complete the booking.

What works

  • Recommendations reflect the user’s stated constraints (party size, time, cuisine, outdoor seating).
  • Rich output — photos, numbered list, source chips, embedded map — makes the handoff feel useful, not like a dead end.
  • Closing copy offers the next human step: reservation page or phone number, not a pretend confirmation.

What we would push on

  • No deep link into OpenTable or Resy from the recommendation card — user still hunts for the booking surface.
  • Map expand is easy to miss behind the composer; primary CTA could be “Open reservation page.”

Takeaway

Human-in-the-loop does not mean low effort. Ship the best possible draft output, then make the remaining user action obvious.

Pattern: Human in Loop

Clarify email intent before drafting

“Email to Brian” triggers purpose, key points, and tone questions with example phrasings.
“Email to Brian” triggers purpose, key points, and tone questions with example phrasings.

What works

  • Underspecified prompts get a short questionnaire instead of a generic draft.
  • Example phrasings (“Ask Brian to reschedule…”) show users how much detail is enough.
  • Closing line sets expectation: provide details, then receive a polished draft.

Takeaway

Mirror Gemini’s clarify-first pattern in plain chat prose when you do not have a structured form.

Pattern: Human in Loop

Draft in an editable card, not a wall of text

Thank-you email in a bordered card with Edit, Copy, and Send affordances on the toolbar.
Thank-you email in a bordered card with Edit, Copy, and Send affordances on the toolbar.

What works

  • The card separates the artifact from chat commentary — users know what to copy or send.
  • Edit opens inline changes without leaving the thread.
  • Follow-up offer (“more formal, personal, or shorter”) keeps refinement in the loop.

What we would push on

  • Send icon is visible before users have reviewed — label could read “Export” to reduce mis-tap risk.
  • No To/Subject fields on the card; recipient context lives only in the prior turn.

Takeaway

Promote consequential drafts into a card with explicit edit and export controls.

Hand off send to the user’s mail app

Send menu opens Gmail, Outlook, or default email app — ChatGPT does not send on its own.
Send menu opens Gmail, Outlook, or default email app — ChatGPT does not send on its own.

What works

  • Export targets match how people actually send mail — not a mystery “Send” inside chat.
  • Three destinations cover web Gmail, Microsoft 365, and native mail clients.
  • User completes send in a trusted surface with their own signatures and accounts.

What we would push on

  • Handoff may lose thread context when the external compose window opens.
  • No preview of which account will send until the handoff completes.

Takeaway

When you will not auto-send, make the export path explicit and let users finish in their mail client.

Pattern: Human in Loop

Steal this

  • Lead with what the AI cannot do before asking follow-up questions.
  • Use bulleted parameter lists when a task needs missing slots filled.
  • End agentic-adjacent flows with a clear human-owned next step.
  • Promote drafts into editable cards with export to real mail apps.

Skip this

  • Implying an action completed when the user still has work to do.
  • Generic lists that ignore constraints the user already provided.

Original gallery pages: Human in the Loop