Gandhiji launched the Non-cooperation movement of 1921 because:
According to Gandhiji , the British rule was established in India with the cooperation of Indians, and had survived only because of this cooperation. So time has arrived to withdraw cooperation to the British.
First World War added to the misery of the Indian people. Heavy taxes, high prices, famines and epidemics made people's life miserable.
Rowlatt Act invited large scale protests throughout the country.
Jallianwala Bagh Massacre and the injustice done to Punjab made Indians angry which needed to be avenged.
To restore the status of the ruler of Turkey.
To bring Swaraj or Self Rule to India.
Mahatma Gandhi declared that the main objectives of the non cooperation movement were :
To cripple the British administration and make them realize that they cannot function without the actual support of the Indians.
To avenge the wrong done by the Government in Punjab (Jallianwala Bagh Massacre) in a non violent way.
To bring about unity among the people.
To inculcate a sense of nationalism.
To promote khadi and to attain Swaraj.