What makes something spam and when should I flag it?
A post should be marked as spam ONLY when it contains an unsolicited advertisement.
It should NOT be marked as spam when:
The answer contains no useful information, such as an answer that says "I don't care about your problem". Flag an answer as 'not an answer' instead; if you find a weird non-question, then flag it 'for moderator attention' with a custom explanation.
It contains only gibberish, such as "fsdguejgkfdlk". Use the 'offensive' flag for these cases, or flag 'for moderator attention' with a custom explanation if it requires more detail.
What makes something offensive and when should I flag it?
Even if a post is a bad post for some reason or another, it is probably not offensive. The Offensive flag is meant to be used only in extreme cases, like hate speech, abuse against people, or abuse of the system.
For example, if a user posts obscene images to the site, that should be flagged as offensive. But if someone says something bad about your favorite technology, that probably doesn't apply.
As a rule of thumb, if you can't justify something as being hate speech, or abuse, you shouldn't mark the post as offensive. Instead, you should downvote the post.
Abuse of the system also includes posts that contain no useful content at all - i.e. gibberish posts along the lines of:
Cats are not allowed to walk across keyboards as part of Stack Exchange posts; this is abuse and should be flagged as such. (Source)
If an otherwise valid post contains vulgar words as an expression of frustration, edit the bad part out instead of flagging the entire post as offensive.
How does the Spam flag differ from the Offensive flag?
In terms of getting the post deleted, there is no functional difference aside from separate counts - 3/6 of either will be sufficient to delete. Spam flags provide data for spam-filtering, and offensive flags similarly provide data for anti-trolling measures.
What effects do these flags have on a post?
These types of flags receive an extremely high priority in the moderation queue. It should be used only when the content of the post you are flagging meets the criteria defined above, or it will likely be declined.
The spam flag is designed to eliminate posts with no relevant content and to penalize the authors:
- 3 flags on a question (spam or offensive): question is banished from the front page and all question lists except search results.
- 6 flags (spam or offensive): post is locked, deleted, and the first revision owner loses 100 reputation.
- 1 flag from a moderator has the same effect as 6 flags from normal users: instant destruction.
- Contents of an answer that was deleted, and got at least one valid spam or offensive flag, will be hidden.
- Because a question with 6 flags is locked and deleted by the Community user, a 10k reputation user cannot undelete it.
- Each flag carries an implicit downvote for calculating the post's score (it does not affect the caster's reputation).
Is there any way to remove these flags?
There is often no need, as spam and offensive flags expire after 48 hours if the thresholds aren't reached.
Rolling back a post to a previous state will revert to the number of flags from that particular revision. This allows the OP (or someone else with edit rights) to rollback a post to which someone else introduced spam or offensive content in a later revision. However, as a general user, once you mark a post as spam or offensive, you cannot take it back.