VOCABULARY / ENTRY
Nagging
nagging
After a person has clearly declined a request, showing the same request again and again to wear down their attention and patience until they finally "agree" — rather than re-earning consent with one persuasive explanation.

Recognizing it
- The same request reappears soon after being declined, without becoming less frequent or stopping
- The decline option only offers a temporary dismissal such as "not now," with no truly persistent "don't ask again"
- The system does not record the earlier decline, or records it but keeps re-prompting at the same frequency anyway
Concept boundary
Different from confirmshaming: that entry is about emotionally loaded wording inside a single prompt at the moment of declining. This entry is about the same request reappearing over time, ignoring a decision already recorded. "Consent-fatigue induction" is merged into this entry as a variant — repeated consent or permission prompts that wear down willpower through repetition itself, not through wording in any one prompt. A single, well-timed reminder spaced out after a genuine change in relevance is not this pattern; the test is whether the product recorded and respected a prior "no."
When to consider it
- Auditing whether a permission request, notification opt-in, or consent prompt keeps reappearing after being declined
- Auditing whether a consent-management interface records a prior decline and adjusts later prompts accordingly
When to be cautious
- Recommending it as a way to lift some conversion metric
- Keeping the same prompting frequency for a request that has already been clearly declined, under the guise of "reminding users about a feature"
Tradeoff
A fix can keep a small number of reminders spaced much further apart, but it must record the decline, withhold the same request for a stated period, and offer a truly persistent "don't ask again"; repeated prompting itself must never be the mechanism that finally obtains consent.
Conditional rules · Editorial advice
Related entries
Both apply pressure around a decline, but through different mechanisms: one relies on a single moment of emotional shaming, the other on repetition over time; record them separately.
Both deny people a closure they should have — one by making the exit path harder, the other by never letting the request stop.
Directly conflicts with the aim of keeping technology quiet and demanding attention only when necessary.
Sources and what they support
Defines nagging as a deceptive pattern that interrupts users with the same request repeatedly, offering only "not now" rather than a permanent decline, illustrated with examples such as Instagram and Windows repeatedly prompting for notifications or setup.
Retrieved: 2026-09-15 · Snapshot unconfirmedDefines nagging as a minor redirection of expected functionality that may persist over one or more interactions, one of five dark-pattern strategies the paper derives from its corpus; illustrates it with Instagram's repeated "turn on notifications" modal, which offers only "Not Now" with no way to permanently dismiss it.
Retrieved: 2026-09-15 · Archived 2026-09-16Lists "Continuous Prompting" as an Overloading-category dark pattern and states explicitly that re-asking for data in the same way after a user has already clearly refused constitutes this pattern on its own; also notes that GDPR requires withdrawing consent to be as easy as giving it.
Retrieved: 2026-09-15 · Snapshot unconfirmedDefinitions reference these sources. Digital specimens, selection advice, relationships, and recipes are editorial work and have not been validated through user research.
Type extensions and implementation notes
No operable specimen exists yet for this entry; the illustration is an editorial sketch. Before shipping, still verify: whether the decline state is actually persisted, whether the re-prompt time window has been confirmed with product and legal, whether "don't ask again" holds across every channel (including push and email), and what the applicable jurisdiction requires for easy consent withdrawal.
{
"harm": "Repeated interruption over time depletes the person's attention and patience, so the eventual \"consent\" comes from exhaustion rather than free will",
"repair": "Record the expressed decline, withhold the same request for a stated period, and offer a persistent \"don't ask again.\""
}Full Agent entry JSON
{
"id": "nagging",
"type": "anti",
"name": {
"zh": "持续纠缠",
"en": "Nagging"
},
"aliases": [
"同意疲劳诱导",
"重复索求式提示",
"Consent-Fatigue Induction"
],
"granularity": "flow",
"intents": [
"audit-choice",
"audit-consent"
],
"tags": [
"anti-pattern",
"repeated interruption",
"consent fatigue",
"declined-request tracking",
"permission prompt"
],
"definition": "After a person has clearly declined a request, showing the same request again and again to wear down their attention and patience until they finally \"agree\" — rather than re-earning consent with one persuasive explanation.",
"boundary": "Different from confirmshaming: that entry is about emotionally loaded wording inside a single prompt at the moment of declining. This entry is about the same request reappearing over time, ignoring a decision already recorded. \"Consent-fatigue induction\" is merged into this entry as a variant — repeated consent or permission prompts that wear down willpower through repetition itself, not through wording in any one prompt. A single, well-timed reminder spaced out after a genuine change in relevance is not this pattern; the test is whether the product recorded and respected a prior \"no.\"",
"signature": [
"The same request reappears soon after being declined, without becoming less frequent or stopping",
"The decline option only offers a temporary dismissal such as \"not now,\" with no truly persistent \"don't ask again\"",
"The system does not record the earlier decline, or records it but keeps re-prompting at the same frequency anyway"
],
"when": [
"Auditing whether a permission request, notification opt-in, or consent prompt keeps reappearing after being declined",
"Auditing whether a consent-management interface records a prior decline and adjusts later prompts accordingly"
],
"when_not": [
"Recommending it as a way to lift some conversion metric",
"Keeping the same prompting frequency for a request that has already been clearly declined, under the guise of \"reminding users about a feature\""
],
"tradeoff": "A fix can keep a small number of reminders spaced much further apart, but it must record the decline, withhold the same request for a stated period, and offer a truly persistent \"don't ask again\"; repeated prompting itself must never be the mechanism that finally obtains consent.",
"comparison": {
"focus": "Pressure applied through repetition over time, rather than emotional pressure in a single moment",
"mechanism": "Re-showing the same request at roughly the same frequency while ignoring a recorded decline",
"cost": "Depletes the person's attention and patience, so any resulting \"consent\" comes from exhaustion rather than genuine willingness"
},
"sources": [
{
"id": "deceptive-nagging",
"title": "Deceptive Patterns · Nagging",
"url": "https://www.deceptive.design/types/nagging",
"claim": "Defines nagging as a deceptive pattern that interrupts users with the same request repeatedly, offering only \"not now\" rather than a permanent decline, illustrated with examples such as Instagram and Windows repeatedly prompting for notifications or setup.",
"checkedAt": "2026-09-15",
"archive": {
"lookupUrl": "https://web.archive.org/web/20260915*/https://www.deceptive.design/types/nagging",
"status": "pending",
"checkedAt": "2026-09-16T05:59:03.364Z",
"error": "status-request-failed",
"jobId": "spn2-b5f8b67e2e29c6273712b442165e78bd8f3924ed"
}
},
{
"id": "gray-2018-dark-patterns",
"title": "Gray, Kou, Battles, Hoggatt & Toombs (CHI 2018) · The Dark (Patterns) Side of UX Design",
"url": "https://classes.cs.uchicago.edu/archive/2020/fall/33231-1/readings/2018_Grayetal_CHI_DarkPatternsUXDesign",
"claim": "Defines nagging as a minor redirection of expected functionality that may persist over one or more interactions, one of five dark-pattern strategies the paper derives from its corpus; illustrates it with Instagram's repeated \"turn on notifications\" modal, which offers only \"Not Now\" with no way to permanently dismiss it.",
"checkedAt": "2026-09-15",
"archive": {
"lookupUrl": "https://web.archive.org/web/20260915*/https://classes.cs.uchicago.edu/archive/2020/fall/33231-1/readings/2018_Grayetal_CHI_DarkPatternsUXDesign",
"status": "available",
"checkedAt": "2026-09-16T05:18:06.690Z",
"jobId": "spn2-1f7b201125d0eb25b2ddac37f4bf8edd087a1e3d",
"url": "https://web.archive.org/web/20260916051911/https://classes.cs.uchicago.edu/archive/2020/fall/33231-1/readings/2018_Grayetal_CHI_DarkPatternsUXDesign",
"timestamp": "20260916051911"
}
},
{
"id": "edpb-dark-patterns-2022",
"title": "EDPB · Guidelines 3/2022 on Dark Patterns in Social Media Platform Interfaces",
"url": "https://www.edpb.europa.eu/system/files/2022-03/edpb_03-2022_guidelines_on_dark_patterns_in_social_media_platform_interfaces_en.pdf",
"claim": "Lists \"Continuous Prompting\" as an Overloading-category dark pattern and states explicitly that re-asking for data in the same way after a user has already clearly refused constitutes this pattern on its own; also notes that GDPR requires withdrawing consent to be as easy as giving it.",
"checkedAt": "2026-09-15",
"archive": {
"lookupUrl": "https://web.archive.org/web/20260915*/https://www.edpb.europa.eu/system/files/2022-03/edpb_03-2022_guidelines_on_dark_patterns_in_social_media_platform_interfaces_en.pdf",
"status": "pending",
"checkedAt": "2026-09-16T05:18:08.074Z",
"error": "status-request-failed",
"jobId": "spn2-08f478e096cf7ba6af37a3b05f820551f088a1a8"
}
}
],
"relations": [
{
"target": "confirmshaming",
"kind": "related",
"condition": "Auditing the same consent or exit flow",
"reason": "Both apply pressure around a decline, but through different mechanisms: one relies on a single moment of emotional shaming, the other on repetition over time; record them separately.",
"basis": "editorial"
},
{
"target": "obstruction",
"kind": "related",
"condition": "Auditing whether a person can actually put an end to a given request or flow",
"reason": "Both deny people a closure they should have — one by making the exit path harder, the other by never letting the request stop.",
"basis": "editorial"
},
{
"target": "calm-technology",
"kind": "conflicts_when",
"condition": "The same request keeps interrupting the user at its original frequency after being declined",
"reason": "Directly conflicts with the aim of keeping technology quiet and demanding attention only when necessary.",
"basis": "editorial"
}
],
"rules": [
{
"when": "A person declines a permission, notification, or data-consent request",
"instruction": "Record the decline and withhold the same request for a stated period.",
"strength": "must",
"basis": "editorial"
},
{
"when": "Designing any mechanism that re-shows a previously declined request",
"instruction": "Repeated prompting must never be the mechanism that finally obtains consent; consent must come from one effective explanation, not from exhaustion.",
"strength": "must",
"basis": "editorial"
},
{
"when": "Providing a decline option",
"instruction": "Offer a truly persistent \"don't ask again,\" not only a temporary option such as \"not now.\"",
"strength": "recommend",
"basis": "editorial"
}
],
"anti": {
"harm": "Repeated interruption over time depletes the person's attention and patience, so the eventual \"consent\" comes from exhaustion rather than free will",
"repair": "Record the expressed decline, withhold the same request for a stated period, and offer a persistent \"don't ask again.\""
},
"demo": null,
"version": "0.1.0",
"editorialStatus": "drafted",
"requirements": [],
"demoCapabilities": [],
"implementationNote": "No operable specimen exists yet for this entry; the illustration is an editorial sketch. Before shipping, still verify: whether the decline state is actually persisted, whether the re-prompt time window has been confirmed with product and legal, whether \"don't ask again\" holds across every channel (including push and email), and what the applicable jurisdiction requires for easy consent withdrawal.",
"image": {
"src": "/images/nagging.webp",
"alt": "A fictional FIELDNOTES interface illustration: the same permission prompt stacked in three layers receding into the distance, each layer carrying a dismissed marker, while a new instance of the same popup appears again in front, with a small warning triangle beside it."
},
"searchTerms": [
"反模式",
"重复打扰",
"同意疲劳",
"拒绝记录",
"权限提示"
]
}