Stay organized with collections
Save and categorize content based on your preferences.
A double negative is a sentence or phrase that contains two negative words,
such as:
not, including contractions like can't, won't
no
Readers find double negatives hard to parse. ("Wait, do two negatives make a
positive or is the author of the error message using two negatives to emphasize
something I shouldn't do?")
Some double negatives in error messages are blatant:
Not recommended
You cannot not invoke this flag.
Recommended
You must invoke this flag.
Other double negatives are more subtle. For example, the words prevents and
forbidding in the following error message are both negatives, leading to
a confusing message:
Not recommended
The universal read permission on pathname prevents the operating
system from forbidding access.
Recommended
The universal read permission on pathname enables anyone to read
this file. Giving access to everyone is a security flaw. See hyperlink
for details on how to restrict readers.
Similarly, avoid exceptions to exceptions.
Not recommended
The App Engine service account must have permissions on the image, except the
Storage Object Viewer role, unless the Storage Object Admin role is available.
Recommended
The App Engine service account must have one of the following roles:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-03-31 UTC."],[[["\u003cp\u003eDouble negatives in error messages confuse readers by using two negative words, making the message difficult to understand.\u003c/p\u003e\n"],["\u003cp\u003eAvoid using words like "not", "no", "prevents", and "forbidding" together in the same sentence as they create a double negative.\u003c/p\u003e\n"],["\u003cp\u003eExceptions to exceptions should also be avoided as they introduce complexity and hinder comprehension.\u003c/p\u003e\n"],["\u003cp\u003eInstead of double negatives, use clear and affirmative language to express the intended message directly.\u003c/p\u003e\n"],["\u003cp\u003eBy eliminating double negatives and exceptions to exceptions, error messages become easier to understand and act upon.\u003c/p\u003e\n"]]],["Double negatives in writing, particularly in error messages, should be avoided due to their confusing nature. Examples include using \"not\" and \"no,\" or more subtle negatives like \"prevents\" and \"forbidding.\" Instead of \"You cannot not invoke this flag,\" use \"You must invoke this flag.\" Similarly, avoid exceptions to exceptions, and opt for clear, direct statements listing allowed conditions or actions, such as roles and permissions.\n"],null,["# Avoid double negatives\n\n\u003cbr /\u003e\n\nA **double negative** is a sentence or phrase that contains two negative words,\nsuch as:\n\n- *not* , including contractions like *can't* , *won't*\n- *no*\n\nReaders find double negatives hard to parse. (\"Wait, do two negatives make a\npositive or is the author of the error message using two negatives to emphasize\nsomething I shouldn't do?\")\n\nSome double negatives in error messages are blatant:\n\nNot recommended\n\u003e You cannot not invoke this flag.\n\nRecommended\n\u003e You must invoke this flag.\n\nOther double negatives are more subtle. For example, the words *prevents* and\n*forbidding* in the following error message are both negatives, leading to\na confusing message:\n\nNot recommended\n\u003e The universal read permission on *pathname* prevents the operating system from forbidding access.\n\nRecommended\n\u003e The universal read permission on *pathname* enables anyone to read this file. Giving access to everyone is a security flaw. See *hyperlink* for details on how to restrict readers.\n\nSimilarly, avoid exceptions to exceptions.\n\nNot recommended\n\u003e The App Engine service account must have permissions on the image, except the Storage Object Viewer role, unless the Storage Object Admin role is available.\n\nRecommended\n\u003e The App Engine service account must have one of the following roles:\n\u003e\n\u003e - Storage Object Admin\n\u003e - Storage Object Creator\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n**Next unit:** [Write for the target audience](/tech-writing/error-messages/target-audience)"]]