Diseases have damaged crops in several states, cutting yields, and exports have been higher than expected because of strong demand from China, which takes about 80% of Indian production.
Indian textile makers been concerned about shortages and high prices.
India is the world's second-largest producer and exporter of cotton, behind China.
Analysts said the move would squeeze global supplies and push up prices.
"Export of cotton has been prohibited till further orders," said a statement from the Directorate General of Foreign Trade (DGFT).
"Export against registration certificates already issued will also not be allowed," the statement said.
India has already exported 8.5m bales of 170kg (375 lbs) in the financial year ending on 31 March, reports say, up from a government estimate of 8.4m bales made in January.
Contracts had been signed for nearly 10m bales to be exported in the period, including those already shipped, Reuters news agency says.
The benchmark US cotton futures for May rose more than 4% to 92.23 cents on Monday on the news from India, Reuters said.
"It's an extremely bad decision," said Dhiren N Sheth, the president of the Cotton Association of India.
"It will harm India's reputation in the international market [and] we will suffer long term," he told the Financial Times.
"More importantly, this is bad for farmers as the price of cotton will go down locally... We urge the government to rethink this regrettable decision," he said.