If you were a client, would you prefer to hire "yes men" who tell you whatever you want to hear, or would you prefer to hire people who tell you the truth? While I've seen some potential clients look for the former, my experience is that "yes men" are not what most prospects need or want. And if you spend too much time trying to please the client by giving them comforting tid bits to back up what they already think or know, you might ultimately lose them and kill your career. After all, that's not what you're hired to do.
Freelancers are hired because they have specialty knowledge -- knowledge clients very often don't have themselves. The point is to bring in a fresh perspective from an outsider. It's your job to know what the company insiders think. But it's also your job as a freelancer to add that extra perspective -- to look at things in a way the client hasn't (and sometimes can't).
Sometimes that includes pointing out problems. For example, what the client thinks is a great slogan could have a completely different meaning to their target audience (a group that perhaps you're a part of). Or maybe English isn't their first language and while they think their original writer did a great job with their Web copy, the grammar is atrocious. You would have to find a way to tactfully tell them so, and hopefully convince them to hire you to fix it. Or perhaps a client asks you what you think of something and you honestly don't care for it -- maybe a first draft of something that they decided to tackle themselves, thinking it would save them money.
In all of these cases and more, telling the client want they want to hear rather than what you really think would be dishonest and a real disservice to that client. No matter how good it might make them feel in the moment, in the long run someone will tell them the truth. And then you just come across looking incompetent.
Not all freelancers are comfortable in confrontational situations where they have to be the one to say "sorry, but I disagree," or "sorry, but no, I don't think this will work in the way you're hoping for." But if you're not comfortable with that, get there. Your other option is to fall into the "people pleaser" trap that will ultimately cost you your professional reputation. If you do love something, by all means say so if asked. But as a freelance professional you cannot be afraid to speak up when something just doesn't feel right -- no matter whose feelings you might hurt. In the end, clients appreciate honesty and competence and they pay handsomely for it.
So what about you? Are you able to be honest with clients even when you have something to say that you know they don't want to hear? Or do you find yourself feeling pressured to agree with them because you're afraid of upsetting them and losing their business? Or (heaven forbid) have you ever agreed with a client solely because you were too lazy to get into a real discussion about potential issues with a project? Share your thoughts in the comments below.