Dark Patterns in UI/UX: A Wolf in Sheep's Clothing
January 18, 2024

Dotan Nahum
Check Point Software Technologies

As online shoppers and internet users, we've all searched for the "skip ad" button, designed to be elusive and nearly too tiny to click. We almost don't recognize those hidden fees automatically added to our shopping cart unless we check twice.

Dark patterns, also known as deceptive design patterns, are user interfaces crafted to trick users into doing something they don't intend to, usually at their expense. The term was coined in 2010 by British UX designer Harry Brignull, who founded a "hall of shame" for dark design patterns to discourage companies from employing them. Alas, 13 years after its inception, the "hall of shame" of deceptive design still receives new additions from the likes of Facebook, Google, and The Wall Street Journal.

Surely this behavior is illegal? Well, sort of. California was among the first states to regulate dark patterns in UI/UX, and the FTC fined online gaming service providers that mislead minors into making purchases, often using their unknowing guardian's credit card. Although tempting from a sales and marketing perspective, dark patterns can light customer trust and your organization's reputation up in flames.

Smoke and Mirrors: Everyday UI/UX Deceptions

Dark patterns are typically categorized according to the type of shady tactics employed.

1. Confirmshaming

A common tactic that emotionally manipulates the user into performing an action they don't intend to do.

Example: A financial newsletter that encourages the user to subscribe by clicking "Make me rich!" versus a "No, I'll stay poor" opt-out button.

2. Roach motel

It is easy for the user to sign up or subscribe, but excruciatingly hard to cancel or unsubscribe.

Example: Online services that only permit cancellation after speaking to a representative over the phone.

3. Nagging

The user tries to perform an action, but they are constantly and consistently interrupted by requests to do something else (that may not be in their best interests).

Example: An app repeatedly asks you to turn on notifications without an option to refuse permanently.

4. Fake scarcity/Popularity/Urgency

The user is pressured into completing a purchase or performing an action by being presented with false information regarding the time limitation for purchase, available stock, or popularity of the product.

Example: "Buy now while stocks last!"

5. Privacy Zuckering

Named after Facebook's founder, this tactic entails asking users for more personal information than necessary to deliver the service. This pattern is built on the old Big Tech idea that "if you're not paying for it, you are the product."

Example: A video editing app requests access to your contacts and messages under the guise of helping you share content with your friends.

6. Bait and switch

The user is presented with fake information, but the information or outcome drastically changes when they show interest and click.

Example: An optional software upgrade is presented as a mandatory software update.

7. Hidden costs/Sneak into cart

The user is drawn in with an attractive offer, but they discover charges, fees, or subscriptions upon reaching the checkout page.

Example: Added surcharges, shipping and handling costs, insurance, and service contract subscriptions.

8. Trick wording

The user is tricked into performing an undesirable action because they are presented with confusing questions or misleading language.

Example: "Are you sure you want to cancel your subscription? Continue/Cancel".

9. Comparison prevention

The user attempts to compare products on an eCommerce website but is faced with overcomplicated results, ambiguous language, or higher-priced items.

Example: A website provides the option to choose one of its pricing tiers without clearly showing the pricing.

10. Disguised ads

Native ads appear as legitimate website content but are unmarked hyperlinked advertisements.

Example: A blog post with the heading "People in [your location] can't believe this number one cleaning hack" directs readers to a paid advertisement by a cleaning company.

11. Forced continuity/hidden subscription

The user is asked to provide their payment details to access a trial or service, then unknowingly enrolled in a recurring payment plan without explicit consent.

Example: A website encourages you to use your credit card to buy an online fitness guide. You are under the impression that it's a one-time purchase, as there is no mention of a subscription outside the small print.

Is Deception for Good Ever Possible?

By putting user experience first, you can use dark patterns for good. For example, you can confirm-shame users when they try to remove critical guardrails from a software system. Even sneaking products into your shoppers' carts can be an ethical and effective use of dark design patterns if the products enhance the shopper experience — like free samples or service upgrades. Alternatively, you can learn to tame the wolf and deliver a delightful personalized experience to your users in a way that benefits everyone in the long run.

Dotan Nahum is Head of Developer-First Security at Check Point Software Technologies
Share this

Industry News

May 02, 2024

Parasoft announces the opening of its new office in Northeast Ohio.

May 02, 2024

Postman released v11, a significant update that speeds up development by reducing collaboration friction on APIs.

May 02, 2024

Sysdig announced the launch of the company’s Runtime Insights Partner Ecosystem, recognizing the leading security solutions that combine with Sysdig to help customers prioritize and respond to critical security risks.

May 02, 2024

Nokod Security announced the general availability of the Nokod Security Platform.

May 02, 2024

Drata has acquired oak9, a cloud native security platform, and released a new capability in beta to seamlessly bring continuous compliance into the software development lifecycle.

May 01, 2024

Amazon Web Services (AWS) announced the general availability of Amazon Q, a generative artificial intelligence (AI)-powered assistant for accelerating software development and leveraging companies’ internal data.

May 01, 2024

Red Hat announced the general availability of Red Hat Enterprise Linux 9.4, the latest version of the enterprise Linux platform.

May 01, 2024

ActiveState unveiled Get Current, Stay Current (GCSC) – a continuous code refactoring service that deals with breaking changes so enterprises can stay current with the pace of open source.

May 01, 2024

Lineaje released Open-Source Manager (OSM), a solution to bring transparency to open-source software components in applications and proactively manage and mitigate associated risks.

May 01, 2024

Synopsys announced the availability of Polaris Assist, an AI-powered application security assistant on the Synopsys Polaris Software Integrity Platform®.

April 30, 2024

Backslash Security announced the findings of its GPT-4 developer simulation exercise, designed and conducted by the Backslash Research Team, to identify security issues associated with LLM-generated code. The Backslash platform offers several core capabilities that address growing security concerns around AI-generated code, including open source code reachability analysis and phantom package visibility capabilities.

April 30, 2024

Azul announced that Azul Intelligence Cloud, Azul’s cloud analytics solution -- which provides actionable intelligence from production Java runtime data to dramatically boost developer productivity -- now supports Oracle JDK and any OpenJDK-based JVM (Java Virtual Machine) from any vendor or distribution.

April 30, 2024

F5 announced new security offerings: F5 Distributed Cloud Services Web Application Scanning, BIG-IP Next Web Application Firewall (WAF), and NGINX App Protect for open source deployments.

April 29, 2024

Code Intelligence announced a new feature to CI Sense, a scalable fuzzing platform for continuous testing.

April 29, 2024

WSO2 is adding new capabilities for WSO2 API Manager, WSO2 API Platform for Kubernetes (WSO2 APK), and WSO2 Micro Integrator.