Grandmasters also struggle with this.
There isn't any hard-and-fast rule, only considerations to bear in mind as you try to decide.
Some of the considerations:
1) My Bishop will have moved twice B(f1) - b5 x c6 to exchange itself for an opposing Knight that moved only once N(b8) - c6. This costs me the loss of a move.
2) In relatively open positions with Pawns on both sides of the board (K-side and Q-side), Bishops are usually more valuable than Knights. In rather closed positions where the action is confined to one flank, Knights are often superior.
3) Will the Bishop-for-Knight trade double my opponent's Pawns? Will this matter? Will the doubled Pawns be strong or weak? Am I in a position to exploit the weakness?
4) Am I trading off an active piece for a less active opposing piece, or the reverse?
I find myself running into the following situation often in my openings, and in post-game analysis I struggle to understand when it is correct to capture the knight with the bishop and when it is a mistake.