Have you ever had a "good" day where you have eaten really well, kept a perfect NC diary with green ticks all round and good food choices... and then watched in horror as it all goes terribly wrong when you give in to a sudden craving for something (fatty, sugary, salty) and pile on the calories? Me too.
Try using this 10 minute rule. It doesn't make it easy or fun, but it does make it more possible for me to resist a craving. I have noticed it is easier to do when I am working on my list of advantages of losing weight regularly, because then they are in the front of my mind when I need them.
Write your list of advantages of losing weight (if you haven't already) or work on it.
Consider what will happen if you do eat whatever you are craving. Not how lovely it will taste, but what will happen after you have eaten it: will you feel guilty, over full, angry/disappointed with yourself?
Imagine your disappointment and crossness when you next stand on the scales and have put on weight.
If the strength of the craving has stayed the same: that's great. You've resisted for 10 minutes already, so you can do another ten minutes: you know you can, because you already have!
If the strength of the craving has gone down: that's fantastic. You've resisted a higher level craving for 10 minutes, you can certainly resist this lower level one for 10 minutes.
If the strength of the craving has gone up: be honest... how did you spend the 10 minutes? Were you thinking about either (1) how lovely the food would be or (2) how deprived / sorry for yourself you feel that you can't eat it? Go back and start again: but make it easy for yourself this time and follow one of the strategies above.
Remember you always have a choice: short term loss of a craved food/drink versus long term loss of weight? No contest really!