Individual HTML example · Obstruction

Refund form loops after submission

A fictional refund form accepts every field, then returns to the first screen with “Something went wrong” and no saved state or alternative route.

Dead endOrder supportAccount Management

This is an original fictional comparison. It depicts no real business and is not a regulator finding, statutory category or legal safe harbour.

Order supportAccount Management

Refund form loops after submission

A fictional refund form accepts every field, then returns to the first screen with “Something went wrong” and no saved state or alternative route.

Potentially problematicSubmit refund request

Submit refund request. The form loops to an empty first screen without identifying a fix.. Order number: Enter order number. Refund reason: Enter refund reason. Requested amount: Enter requested amount. Try again

Neutral alternativeWe could not submit the request

We could not submit the request. Entered details are saved and a supported fallback is offered.. Saved order number: Enter saved order number. Saved refund reason: Enter saved refund reason. Saved requested amount: Enter saved requested amount. Resume or contact support. Purpose and refusal effect, expanded: The form explains why “Resume or contact support” is requested and what happens if it is not used.

Why the first version can mislead: The route adds avoidable effort between the user’s stated intention and completion. In this order support example, the obstacle is: “The form loops to an empty first screen without identifying a fix.” Evidence should show whether the alternative remains usable and whether “Resume or contact support” reaches the represented state. A customer may abandon a valid request after repeating work without a way to complete or recover.

What a fairer design does: Preserve entered data, explain the specific error and provide a tested fallback route with a reference number.

Show annotated differences (4)
Potentially problematic version
  • The form loops to an empty first screen without identifying a fix.Why this state matters: The route adds avoidable effort between the user’s stated intention and completion. In this order support example, the obstacle is: “The form loops to an empty first screen without identifying a fix.” Evidence should show whether the alternative remains usable and whether “Resume or contact support” reaches the represented state. A customer may abandon a valid request after repeating work without a way to complete or recover.
  • Try againReview prompt: How many steps, waits and channel changes separate “Try again” from the completed order support outcome?
Neutral alternative
  • Entered details are saved and a supported fallback is offered.Fairer design: Preserve entered data, explain the specific error and provide a tested fallback route with a reference number.
  • Purpose and refusal effect, expanded: The form explains why “Resume or contact support” is requested and what happens if it is not used.Review prompt: Which fields or permissions are required, what happens on refusal, and does the resulting state support this criterion: “The interface represents or reasonably implies that the outcome is available”?
Review questions (3)
  • How many steps, waits and channel changes separate “Try again” from the completed order support outcome?
  • Which fields or permissions are required, what happens on refusal, and does the resulting state support this criterion: “The interface represents or reasonably implies that the outcome is available”?
  • Measure the same task through the clearest available route: does the effort difference persist once “General outage affecting all paths” is accounted for?
Side-by-side order support interface showing “Submit refund request” and the clearer alternative “We could not submit the request”.Provenance: Original hypothetical order support example created for this library; no real business, product or interface is depicted.

Complete practice context

How this example relates to Dead end

A consumer-favourable route cannot reach its represented outcome and instead loops, stalls or loses progress. This is a design and research taxonomy for learning and evidence review, not a statutory offence label or an automatic finding that an interface is unlawful.

The full guide explains inclusion and exclusion criteria, potential harms, fairer design, evidence questions and separate Australian legal information layers. The example page isolates one scenario so it can be shared and discussed without reproducing the complete library on one page.

Continue comparing

Dead end

Cancellation confirmation changes no account state

Subscription accountCancellation

A fictional service shows “Cancellation complete” but returns the user to an active-plan dashboard and continues renewal without a receipt or status event.

Open this example

Account deletion obstruction

Deactivation presented as deletion

Social account settingsAccount Management

A fictional platform labels a control “Delete account”, but the confirmation only hides the profile and leaves data and reactivation available indefinitely.

Open this example

Account deletion obstruction

Deletion buried behind an unsupported ticket

Shopping accountAccount Management

A fictional retailer places account deletion behind six help pages and requires a support ticket containing an order number even for users who never ordered.

Open this example
Sources and provenance for this example

Evidence base

Sources

  1. An Ontology of Dark Patterns KnowledgeGray et al.; ACM CHI 2024 · Secondary · checked 2026-09-14 · DOI 10.1145/3613904.3642436; arXiv:2309.09640
  2. Competition and Consumer Amendment (Unfair Trading Practices) Act 2026Federal Register of Legislation · Primary · checked 2026-09-14 · C2026A00064