When I find my opponent's game suspicious, I check their page after the game. I have seen many people who has beaten computer impossible on these investigations.
Confessions of an ex-cheater

This really isn't the place for this discussion. Join the following group if you would like to discuss.
https://www.chess.com/groups/home/cheating-forum
Hi,
I have been playing on this site for almost 3 years. I've played thousands or tenthousands of game until now (with different usernames of course). In the first year I cheated a lot. But then I stopped. Cheating was ridiculous, cheating was meaningless. No, actually cheating had a meaning. That you are a deceiver. I was just pretending and enjoying my fake victories. That was laughable and pitiable, both at the same time. Cheating means you have more problems than winning in chess. It is not harmless. It means when people don't see what you are doing, you are not what you are pretending to be. You are doing sth secret when you are sure nobody will notice. You are not a cheater in chess, you are a cheater in your real life too..Sad but true.
Anyway psychology of a cheater is a very interesting and long topic and I can't include all my thoughts here.
So now I've been an honest player for two years (Okay I still have the habit of playing with more than one username but I will also change that very soon). And as an ex-cheater I think I realize the cheaters better than users who have been always genuine. The irony is that I get really mad when I recognize my opponent is cheating as if I hadn't done this to many people.
For example your rating is around 1600. If a player of same rating is cheating, that means as a 1600 rated player you are playing somebody whose rating is more that 2500 or maybe more than 2800. A player who punishes your pathetic moves instantly by the most correct move. Then you feel demoralized...
Of course the better cheater mixes the moves in order not to be detected. For example he makes the first 10 moves himself then let computer take over. Or he runs the software in analysis mode, which gives the first 3 or 5 or 7 best moves (it is adjustable). He then picks the move whichever he wants. I think, this type of cheating is really hard to detect.
You can not avoid playing a cheater. That is a fact. I think most of them are clever enough to win some games, lose some games and keep his rating at a modest level e.g. 1400s 1600s.
Let me repeat: You can't avoid playing a cheater. but using some methods you can prevent the postman from ringing the bell twice (I'm sure site veterans know them but newcomers can find useful).
1. 5 min and longer games are very suitable for cheaters. They need time. 3 min is the best option for blitz to have the minimum number of cheating incidents.
2. Bullet is 99% cheater free. If you are obsessed with not being cheated play bullet.
3. Check your opponents profile. If there is a large gap between his bullet and blitz ratings, it may be a good idea not to play that person. ( A 1700 blitz player can't have a 900 rating in bullet. I have encountered these players many times).
4. If a 1600 player has beaten a 2000+ player in the past, don't play him (Of course that 2000+ player can be a cheater too. When he plays himself, you can easily beat him)
OK.That's all I guess. Any comments are welcome.