give the devil his due

To be fair, even to someone who is bad; tell the truth about a person even though you don't like him,
I don't like Mr. Jones, but to give the devil his due, I must admit that he is a good teacher.
Categories: {v. phr.}