Skip to content
Knowledge base

Craft

Ethical Design — Avoiding Dark Patterns, Converting Honestly

Last verified 2026-08-13

Ethical Design — Avoiding Dark Patterns, Converting Honestly

Persuasion and deception share a toolbox but not a purpose. Persuasion helps a user do something they already want to do faster; deception ("dark patterns," now formally "deceptive patterns") engineers a choice the user would not make if they understood it. This doc is the counterweight to influence persuasion and conversion ux: it shows how to hit conversion goals without eroding trust or crossing legal lines. The core claim: honest design out-converts trickery on any horizon longer than one quarter, because deception's yield decays into refunds, chargebacks, churn, one-star reviews, and — increasingly — enforcement.

Why it matters: trust, retention, brand, and law

  • Trust is the conversion multiplier. A user who feels tricked once discounts every future claim you make. Deceptive patterns win the click and lose the relationship — they front-load a metric and back-load the cost.
  • Retention exposes deception. A signup you obtained by hiding the price shows up as a cancellation the moment the charge posts. Honest acquisition and retention are the same number measured twice.
  • The law has caught up. What used to be a UX-ethics debate is now regulated design. High level, without legal advice:
  • US — FTC. Section 5 of the FTC Act bars unfair or deceptive practices. The FTC's Bringing Dark Patterns to Light report (2022) names four harms: inducing false beliefs, hiding material information, causing unauthorized charges, and obscuring privacy choices. Even after the "click-to-cancel" Negative Option Rule was vacated on procedural grounds in 2025, the FTC continues enforcing under Section 5 — the multi-billion-dollar action over a hard-to-cancel Prime subscription is the reference case. Design implication: cancellation must be as easy as signup, and enrollment requires express informed consent.
  • EU — GDPR / DSA / DMA. GDPR requires consent to be freely given, specific, informed, and unambiguous (opt-in, not preselected). The EDPB Guidelines 03/2022 on Deceptive Design Patterns catalog consent-interface tricks to avoid. DSA Article 25 flatly prohibits online-platform interfaces that "deceive or manipulate" users or impair free, informed decisions. The DMA bars gatekeepers from nudging users away from privacy-protective defaults. Design implication: a real reject option must sit on the same layer as accept and be no harder to reach — the EDPB's Cookie Banner Taskforce found that a banner with a consent button and no refuse option on any layer "is not in line with the requirements for a valid consent and thus constitutes an infringement." It stopped short of mandating equal visual weight; privacy consent and tracking carries that detail.
  • California — CPRA/CCPA. The statute names "dark patterns" explicitly: a UI that subverts consumer choice is not valid consent. The CCPA regulations require symmetry in choice: "The path for a consumer to exercise a more privacy-protective option shall not be longer or more difficult or time-consuming than the path to exercise a less privacy-protective option" (§ 7004(a)(2)) — with a banner as the worked example, where "Accept All" next to "More Information" or "Preferences" is not symmetrical because accepting takes one step and declining takes more, and "Accept All" next to "Decline All" is. The CPPA's 2024 dark-patterns enforcement advisory restates it. Note the axis, because it is wider than click-counting: that chapeau governs path length, but it continues "Illustrative examples and requirements follow," and in the regulations effective 1 January 2026 two of those subparagraphs are about visual prominence. (D): "A choice where the 'yes' button is more prominent (e.g., larger in size or in a more eye-catching color) than the 'no' button is not equal or symmetrical." (E) says the same of a financial-incentive choice that is preselected or "featured more prominently (e.g., larger in size or in a more eye-catching color)" than the choice not to participate. Design implication: no "Accept all" button without an equally easy "Reject all," and no visually louder "Accept all" either.

The takeaway is not "consult a lawyer for every button" — it's that the ethical design choice and the compliant design choice have converged. Build for the honest version and compliance largely follows.

The deceptive-pattern taxonomy

Categories below follow deceptive.design (Brignull), the FTC report, and NN/g. For each: what it is, the harm, and the ethical alternative that still converts.

PatternWhat it isWhy it's harmfulEthical alternative
SneakingSlipping items into a cart or adding fees/subscriptions the user didn't chooseUnauthorized charges, betrayal of intentAdd only what was selected; make upsells an explicit, unchecked opt-in with a clear price
Hidden costs / drip pricingReal total revealed only at the last checkout stepSunk-cost coercion; users can't compare honestlyShow all-in price up front, including fees; a transparent total converts checkout better (pricing strategy)
Fake urgency / scarcityCountdown timers that reset, "Only 2 left!" that never changesManufactured panic overrides judgmentShow real stock and real deadlines; genuine scarcity is persuasive and honest
Fake social proofInvented reviews, fabricated "12 people bought this" popupsFraudulent inducement; legally deceptiveShow verified, attributable reviews and real usage counts (influence persuasion)
MisdirectionVisual weight steers the eye to the profitable choice; the alternative is dimmedExploits attention rather than informingGive options honest visual parity; let the genuinely better default win on merit
ConfirmshamingGuilt-tripping the decline option ("No thanks, I hate saving money")Emotional manipulation; damages brand voiceNeutral, respectful decline copy: "No thanks" (ux writing)
Obstruction / roach motelEasy to get in, deliberately hard to get out (cancel, delete, downgrade)Traps users; now a top enforcement targetSymmetric exits — cancel in the same place and step-count as signup
Forced actionRequiring unrelated data, account creation, or consent to complete a taskCoercion; violates data minimizationGuest checkout; ask only for what the task needs; decouple consent from function
NaggingRepeated interruptions pressuring an action the user already declinedWears users down into unwanted "yes"Ask once, respect the answer, offer a "don't ask again"
Trick wording / trick questionsDouble negatives and confusing toggles that invert the expected outcomeUsers act against their own intentPlain, single-negative language; state the outcome of each choice literally
PreselectionPro-business option checked by default (marketing consent, add-ons)Consent isn't freely given; illegal under GDPRDefault to the privacy-protective / no-cost state; make the upsell an active opt-in
Disguised adsAds styled as content, "download" buttons that are adsDeceives clicks; wastes user effortLabel ads clearly; distinguish sponsored content unmistakably
Bait and switchAdvertise one outcome, deliver another when the user actsBreaks the core promise; erodes all trustDeliver exactly what the CTA promised, every time
Privacy zuckeringTricking users into sharing more data than intended via confusing controlsPrivacy harm; regulatory exposureData minimization + clear, symmetric privacy controls

Consent & privacy UX done right

  • Symmetric consent banners. "Accept all" and "Reject all" as equally prominent buttons on the first layer — same size, weight, and click cost. No pre-ticked boxes, no "Reject" buried two layers deep. Be precise about where that rule comes from: **equal click cost and a no-more-prominent accept button are both legal requirements in California (§ 7004(a)(2) and its subparagraphs (D)–(E), above), while pixel-identical buttons are this guide's rule, not a regulator's. The EDPB's Cookie Banner Taskforce expressly declined to set a general colour or contrast standard — "a general banner standard concerning colour and/or contrast cannot be imposed on data controllers" — and requires a case-by-case check that colours are not "obviously misleading," its own example of manifest failure being a reject button whose text contrast is so low it is unreadable. Ship the stricter version anyway: it is exactly what the Misdirection** row above forbids, it spares you a case-by-case argument you would have to win one banner at a time, and a ghost-button reject fails contrast on accessibility grounds regardless of any privacy rule. The rest of the EDPB detail belongs to privacy consent and tracking, not here.
  • Data minimization. Collect only what the current task requires. Every extra field is a liability and a friction point; fewer fields also convert better.
  • Honest defaults. Default to the state you'd defend if the user watched you set it: marketing off, sharing off, most-private option on.
  • Easy opt-out and "click to cancel." Cancellation, downgrade, and data-deletion live where the user expects them and take no more steps than the reverse action did. Treat FTC symmetry as a design invariant regardless of any single rule's status.
  • Transparent pricing. All-in totals up front; recurring charges, renewal dates, and price changes stated plainly before purchase and reconfirmed after (paywall benchmarks).

Persuasion vs manipulation: where the line is

Cialdini's principles — reciprocity, commitment, social proof, authority, liking, scarcity, unity — are ethically neutral tools (influence persuasion). The line is not which lever you pull but whether the lever is real. Real scarcity: ethical. Fake countdown: manipulation. Three tests to apply to any persuasive element:

  • Asymmetry / symmetry test: Is the action you want as easy to reverse as it is to take? If getting in is one click and getting out is a phone call, it's a dark pattern.
  • Transparency test: "Would I be comfortable if the user saw my actual intent?" If the design only works because the user misunderstands it, it fails.
  • Regret test: Will a typical user, a week later, be glad they did this — or feel tricked and demand a refund? Design for the version they'll thank you for.
  • Benefit test: Does this element serve the user's goal or only the business's? Persuasion aligns both; manipulation serves one by exploiting the other.

Accessibility & inclusion as an ethical baseline

An interface that excludes people is unethical before it is ever deceptive. Accessibility is not a feature tier — it is the floor (accessibility). Meet WCAG (perceivable, operable, understandable, robust): sufficient contrast, full keyboard operation, semantic structure, honest focus order, and captions/alt text. Deceptive patterns hit disabled and less-technical users hardest, so an accessible, plainly-worded interface is also the most resistant to accidental manipulation. Inclusion extends to language, cognitive load (ux writing), and not weaponizing anxiety or urgency against vulnerable users.

Attention & well-being: respecting the user's time

  • No manipulative engagement loops. Infinite scroll with variable-reward pacing, autoplay chained to autoplay, and streak mechanics that punish absence optimize for time-on-app at the cost of user well-being. Prefer natural stopping points and "you're all caught up" states.
  • Honest notifications. Notify for events the user actually cares about; never fake badges or invent activity to pull re-engagement. Let users tune frequency granularly.
  • Defaults that respect the user. Sound off by default, tracking off by default, digest-over-realtime where reasonable. A default is a decision you make on the user's behalf — make the one you'd want made for you.

Checklist

  • Every default is one you'd defend if the user watched you set it (privacy-protective, no preselected consent or add-ons).
  • Consent banner offers "Reject all" as easily and prominently as "Accept all" — same layer, same weight.
  • Cancellation / delete / downgrade takes no more steps than signup / add / upgrade did (symmetry).
  • Full all-in price, fees, renewal date, and recurring terms shown before purchase — no drip pricing.
  • Urgency, scarcity, and social-proof claims are all factually true and verifiable.
  • Decline/skip copy is neutral and respectful — no confirmshaming.
  • Only the data the task needs is collected; guest paths exist where account creation isn't essential.
  • Ads and sponsored content are unmistakably labeled.
  • Each persuasive element passes the transparency test and the regret test.
  • Interface meets WCAG baselines and plain-language standards (accessibility, ux writing).
  • Notifications map to real, user-relevant events and are user-tunable.

Anti-patterns

Reject these outright — this is the dark-pattern list to design against:

  • Sneaking items, fees, or subscriptions into a transaction the user didn't authorize.
  • Hidden costs / drip pricing — revealing the true total only at the final step.
  • Fake urgency or scarcity — resetting countdowns, permanent "almost sold out."
  • Fabricated social proof — invented reviews, fake "just purchased" activity.
  • Misdirection — using visual hierarchy to steer clicks away from the user's interest.
  • Confirmshaming — guilting or shaming the decline option.
  • Obstruction / roach motel — easy to start, deliberately hard to cancel or delete.
  • Forced action — demanding unrelated data or account creation to finish a task.
  • Nagging — repeatedly pressuring an action the user already declined.
  • Trick wording — double negatives and inverted toggles that flip the outcome.
  • Preselection — pro-business options checked by default (consent, add-ons).
  • Disguised ads — ads dressed as content or as functional buttons.
  • Bait and switch — advertising one outcome and delivering another.
  • Privacy zuckering — coaxing users into oversharing via confusing controls.
  • Manipulative engagement loops — variable-reward mechanics engineered to override the user's own stopping point.
  • Asymmetric consent — "Accept all" prominent, "Reject all" buried or absent.

Sources