Study failures. The patterns, thoughts etc. that lead to you succumbing to temptation. The more familiar you are with them, the better you can defeat them.
Give names to the Impulsive Self and the Controlled Self. This helps you recognize them.
Realizing that failing now makes you likelier to fail in future increases the pain of failing.
Being distracted, or multitasking, weakens your will.
Tracking alone will improve, because it breaks the pattern of careless failure.
Your willpower gets exhausted. But incrementally-increasing challenge over time makes it stronger in the long term. Sugar takes care of this short-term depletion.
If you're facing a huge challenge, take a very tiny version of it to build up. e.g. smiling at people instead of approaching them, putting a bowl of sweets out and resisting them.
Use questions to elicit the most painful/pleasurable things that'll motivate you to do the task at hand.
Feeling virtuous gives us license to be bad. Call to mind why you did the virtuous thing, so you get back to aspiration/effort instead of labelling. Self-congratulation makes the Higher Self slack. Look at different willpower challenges as independent from one another; that you won one an hour ago doesn't make it right to fail one now.
We look for a grain of virtue in bad behavior to justify it To get around this trap, measure something that'll really keep you aligned with your goal.
Both of the problems just listed are to do with looking at the label rather than the actual situation.