I took a fiction writing class a while ago, and we were discussing what makes a good character in a story. Apparently, if you make a good guy, he should have a negative quality (a weakness) and if you make a bad guy, he should have a redeeming quality.
The reason is that we have a built-in distrust of absolutes. If we see something as all good, or all bad, we just don’t believe it is real. Therefore writers often add in these things to make the story more believable.
In advertising a lot of times we try and make our brand flawless. Our commercials show it saving the day, or being the perfect solution to a challenge. Maybe this is why nobody believes advertising. It doesn’t sound authentic because it’s too polished. Maybe our adds would pull better if we admitted a product fault.