The four elements that you should consider are:
Offers
Communication
Execution
Supportive Programming