During the season, the IMD used satellite imagery and surface data to assess and predict storms. The agency also utilized a tropical cyclone forecast model that used climatology and a storm's persistence to forecast future movement. Warnings and advisories were broadcast throughout India by telegraph and news media. The basin's activity is sub-divided between the Arabian Sea and the Bay of Bengal on opposite coasts of India, and is generally split before and after the monsoon season.
The IMD tracked nine tropical disturbances, including one that developed over land, which is below average of 13 systems. Five of the storms formed from October to December, after the end of the monsoon season. In general, storms moved slower than average, and two of the cyclones took unusual tracks near land – one executed a rare loop in the Bay of Bengal, and another turned abruptly away from the Indian state of Gujarat. According to the JTWC, activity in the basin was 60% greater than average, with eight tropical cyclones. Four of these storms attained hurricane intensity – winds of at least 120 km/h (75 mph) – which was a record at the time.
During June, a series of storms affected India in the height of the monsoon season. Two storms on opposite sides of the country contributed to the northward progression of the monsoon. Continued rainfall from the monsoon led to additional flooding. As of July 24, flooding from widespread rains had killed 731 people across India. The floods also wrecked 368,420 houses and ruined 394,000 ha (970,000 acres) of crop fields. The monsoon became reestablished over open waters on October 9, spawning two storms in the basin that month. There were two simultaneous storms on opposite sides of India in October, which would not happen again until May 2010.
In early May, a westerly wind burst spawned two disturbances on both sides of the equator in the eastern Indian Ocean, in association with the monsoon trough. The system in the southern hemisphere eventually became Tropical Storm Jenna, while the system in the northern hemisphere developed an area of convection about 445 km (275 mi) northwest of Sumatra. This disturbance moved generally northward, and initially remained disorganized; the thunderstorms were removed from the circulation. However, the JTWC issued a Tropical cyclone formation alert (TCFA) on May 5 once the system became better organized amid low wind shear. Rounding the periphery of a ridge, the system turned to the northeast. Based on the appearance on satellite imagery, the JTWC classified the system as Tropical Cyclone 01B at 00:00 UTC on May 7. Three hours later, the IMD classified the system as a depression about 400 km (250 mi) south of Kolkata. The storm intensified further while moving toward southeastern Bangladesh. The JTWC upgraded it to a 75 km/h (45 mph) tropical storm, while the IMD upgraded it to a deep depression. Around 00:00 UTC on May 8, the storm made landfall along Cox's Bazar District. Quickly weakening over land, the system dissipated over northern Myanmar later that day.
The system brought rainfall to southeastern India and Bangladesh. Kalapara Upazila in the latter country recorded 60 mm (2.4 in) of precipitation on May 7. A station in Cox's Bazar recorded peak winds of 75 km/h (45 mph). The storm produced high tides that flooded villages on the coast, while one girl was swept away by high waves. High winds knocked down trees and houses. There were 140 fishermen missing following the storm on 10 boats.
On May 31, a weak circulation persisted over the warm waters of the Gulf of Aden. It moved east-northeastward along the coast of Yemen and Oman, bringing dry air from the north which decreased the convection. The system moved farther offshore on June 7 into the open Arabian Sea, where it interacted with the south-west monsoon and developed more convection. The convection became more persistent by June 9 about 1,480 km (920 mi) northeast of Somalia by June 9. Moving northwestward, the system organized enough for the JTWC to classify it as Tropical Cyclone 02A about 160 km (100 mi) from the Oman coastline. This marked the first occasion that a tropical cyclone originated from a system in the Gulf of Aden. Later on June 11, it struck Oman's southeast coast. The storm weakened over land, dissipating on June 12, although it continued to produce rainfall – heavy at times – over the next few days. The IMD did not track the system.
Offshore Oman, the storm's rough waves disabled an oil tanker and damaged a fishing boat, killing one person in the latter incident. Striking Oman, the storm produced significant rainfall totals well above the monthly average, peaking at 234 mm (9.2 in) in the Dhofar region. Strong winds where the storm moved ashore damaged buildings and the local water plant. The rains washed out roads and isolated villages, killing two people due to drowning in Al-Ghubra. However, the effects were more severe in Yemen, where the floods were considered the worst on record. The storm produced the heaviest rainfall in 70 years, reaching 189 mm (7.4 in) in Ma'rib. Flood waters washed away or damaged 1,068 km (664 mi) of roads and 21 bridges, some of them dating back 2,000 years to the Roman era. The storm washed away the topsoil or otherwise wrecked 42,800 ha (106,000 acres) of crop fields, accounting for US$100 million in agriculture damage. At least 1,820 houses were destroyed, many of them built on wadis, or dry river beds. Overall damage was estimated at US$1.2 billion, and there were 338 deaths in Yemen. The World Bank assisted in a project to rebuilt the damaged infrastructure in Yemen and to mitigate against future floods.
On June 9, a disturbance began forming within the monsoon trough off the southeast coast of India. Inflow from the south helped the system organize, and the convection became more defined on June 11. At 06:00 UTC the next day, the JTWC classified the system as Tropical Cyclone 03B, and three hours later the IMD classified it as a depression. A ridge to the east initially steered the system to the northwest, although an approaching trough turned it to the northeast, parallel to the coastline. Early on June 13, the JTWC assessed peak 1-minute winds of 85 km/h (50 mph), and on the next day, the IMD upgraded the system to a cyclonic storm. Both the intensity and the track were unusual for the month of June. At 00:00 UTC on June 16, the IMD estimated peak 3-minute winds of 85 km/h (50 mph), around which time the storm turned back to the northwest. Five hours later, the storm made landfall near Visakhapatnam, Andhra Pradesh, and it rapidly weakened into a remnant low. The JTWC continued tracking the remnants until June 18 when the system was over Madhya Pradesh.
About 3,000 people evacuated ahead of the storm in Andhra Pradesh. When the storm struck the state, the highest winds on land were around 55 km/h (35 mph). However, the most severe effects were due to heavy rainfall, in part due to the storm's interaction with the monsoon. Chennai in northeastern Tamil Nadu recorded 350 mm (14 in) on June 14, breaking the 100 year old record for the greatest June daily rainfall total. Three people died near the city after the rains flooded streets. The highest daily rainfall was 680 mm (27 in) in Khammam district in Telangana. Widespread areas in Andhra Pradesh received over 300 mm (12 in) of precipitation, locally peaking at 1,200 mm (47 in), causing flooding that breached reservoirs and damaged 3,833 canals. In Madanapalle, flood waters reached 6 m (20 ft) deep, forcing 1,500 people to leave their homes. The floods also damaged 13,378 ha (33,060 acres) of crop fields, with damage to bananas, coconuts, and mangroves. The storm damaged or destroyed 1,594 homes, leaving over 3,000 families homeless. Overall damage was estimated at RS$820 million (US$23.5 million) in Andhra Pradesh, and there were 68 deaths in the state, mostly due to flash flooding. Elsewhere in India, the storm killed 111 people, including 44 in Tamil Nadu where 18 boats were damaged or missing. In some areas, the rains helped end a drought. After the storm passed, the Andhra Pradesh government provided each family RS$1,000 (US$30) if their house was destroyed, and RS$100,000 (US$3,000) if they lost a family member.
While the previous storm was paralleling the east Indian coastline, another disturbance formed off the west coast on June 15, also associated with the monsoon. The new area of convection persisted, developing a distinct circulation by the next day. Early on June 17, a depression developed about 365 km (265 mi) west of Mumbai. At 18:00 UTC that day, the JTWC classified it as Tropical Cyclone 04A, after the wind field became more defined. The system moved to the northeast within the influence of the monsoon, and quickly intensified due to an anticyclone aloft providing favorable conditions. On June 18, the IMD upgraded the system to a cyclonic storm, and further to a severe cyclonic storm by 18:00 UTC that day. At 23:00 UTC, the storm made landfall on Gujarat near Diu, only the fourth cyclone since 1891 to strike the state in June. An hour later the IMD assessed peak 3-minute winds of 110 km/h (70 mph), based on the appearance of an eye feature. Meanwhile, the JTWC assessed slightly stronger 1-minute winds of 120 km/h (75 mph), equivalent to a minimal hurricane. The storm turned northward and slowly weakened, degenerating into a remnant low over Rajasthan on June 20 before being swept up by an approaching trough.
The storm moved ashore with a high storm surge, estimated at 5 to 6 m (16 to 20 ft) in Bharuch. Winds reached 85 km/h (53 mph) in Veraval, while heavy rainfall spread across the region, totaling over 300 mm (12 in) in some parts of Gujarat. South of the landfall point, high winds and waves washed 10 boats ashore near Mumbai, forcing the crews to be rescued by helicopters. The storm disrupted wheat production and port operations in western India. In Gujarat, the storm uprooted trees and damaged 8,000 ha (20,000 acres) of crop fields, with 2,113 cattle killed between Gujarat and neighboring Maharashtra to the south. The storm damaged 41,134 houses in the two states, and overall damage was estimated at RS$196 million (US$5.6 million). There were 47 deaths related to the cyclone.
Toward the end of July, a well-defined low pressure area developed in the northwest Bay of Bengal. It moved onshore and developed into a depression over southeastern India near Daltonganj on July 26. Turning to the west, the system moved through central India, bringing heavy rainfall along its path. The system degenerated into a remnant low on July 28 over Rajasthan, and the next day was absorbed by the monsoon trough.
On October 1, a depression formed in the western Bay of Bengal. Moving westward, it failed to intensify beyond 45 km/h (30 mph). Around 00:00 UTC on October 2, the system made landfall near Ongole, Andhra Pradesh. Later that day the system degenerated into a remnant low over Karnataka state. It turned northward and moved through central India, bringing widespread heavy rainfall along its path. Eventually it turned to the northeast, dissipating over the Himalayas on October 5. In southern India, the storm wrecked houses, while flash flooding swept away people into rivers. At least 22 people were killed in the country.
Described by the JTWC as having "one of the most unusual tracks in North Indian Ocean cyclone history", the storm originated as an area of convection that formed on October 14 in the southern Bay of Bengal. Moving westward, it struck Andhra Pradesh on October 17 as a well-defined low pressure area. It crossed southern India and emerged into the Arabian Sea on October 20. The system developed into a depression on October 22 and quickly intensified while moving northward. By October 24, the cyclone approached hurricane intensity as it developed an eye. The IMD estimated peak 3-minute winds of 110 km/h (70 mph), and the JTWC estimated peak 1-minute winds of 120 km/h (75 mph). On October 25, the storm abruptly stalled and weakened offshore Gujarat and progressed southwestward as a minimal storm. It was no longer classifiable as a tropical cyclone by October 28, although its remnants persisted until November 2 when they dissipated east of Somalia.
In southern India, the storm dropped heavy rainfall that caused severe flooding in Andhra Pradesh. At least 112 reservoirs or dams were breached, killing 200 people in Prakasam district. The waters ruined about 1,600,000 ha (4,000,000 acres) of crop fields and damaged about 53,000 houses, leaving thousands homeless and forcing 100,000 people to leave their homes. The floods killed 388 people in southern India and caused US$128.5 million in damage. The storm later brushed the west coast of India, stranding 50 boats.
The monsoon trough produced an area of convection south of the Andaman and Nicobar Islands on October 21. Located south of a ridge, the system moved westward through an area of hostile wind shear, which prevented quick development by displacing the circulation east of the convection. The JTWC issued a TCFA on October 22 once it appeared the shear was decreasing, although the system did not organize initially. After the convection became more defined, the JTWC classified the system as Tropical Cyclone 06B on October 25 in the central Bay of Bengal. An approaching trough from the west weakened the ridge, allowing the storm to turn to the north and later northeast. The IMD classified the system as a depression on October 27, and later that day estimated peak 3-minute winds of 55 km/h (35 mph), making it a deep depression. The JTWC assessed a higher intensity of 85 km/h (50 mph). Accelerating northeastward, the storm made landfall near the border of India and Bangladesh around 18:00 UTC on October 28. Moving through Bangladesh, the system quickly weakened and degenerated into a remnant low on October 29 over the Indian state of Assam.
Ahead of the storm, the government of Bangladesh evacuated about 500,000 people, with the assistance of 32,000 people helping spread word of the storm to coastal villages. Boats were advised to return to port. As the cyclone moved ashore, it produced heavy rains and 80 km/h (50 mph) winds, along with a 3 m (9 ft) storm surge. Heavy rainfall caused disruptions and flooding in Kolkata in eastern India. In Bangladesh, flooding drowned thousands of cattle in Chittagong and damaged 12,000 ha (30,000 acres) of crop fields. The storm wrecked about 15,000 thatch huts across the country. About 400 houses were destroyed in Barisal District, leaving thousands homeless. Three children were killed in Khulna after their house collapsed. At least 14 people were killed and over 2,000 people were injured, with 100 fishermen left missing after their boats were wrecked. Two fishermen seeking shelter were accidentally shot and killed by members of the Bangladesh navy, who thought the fishermen were pirates.
After a tropical depression from the Western Pacific dissipated over Myanmar, another disturbance formed in the extreme eastern Bay of Bengal on November 1. It moved westward due to a ridge to the north, slowly organizing. On November 4, the IMD classified the system as a depression, although the JTWC had classified it as Tropical Cyclone 07B a day prior. The storm quickly organized and developed a well-defined eye. On November 6, the cyclone struck about 50 km (30 mi) south of Kakinada, Andhra Pradesh at peak intensity. The IMD estimated peak winds of 145 km/h (90 mph), while the JTWC assessed peak winds of 215 km/h (130 mph). Soon after landfall, the cyclone weakened and dissipated by November 7.
Ahead of the storm, about 225,000 families evacuated, although many towns lacked proper storm shelters. When the cyclone made landfall, it produced strong winds up to 100 km (60 mi) inland, dropped 210 millimetres (8.3 in) of rainfall across a 40 km (25 mi) region, and flooded over 250 villages along 60 km (37 mi) portion of the coast. About 70% of the overall damage was in East Godavari district, where two villages were entirely destroyed. The storm destroyed 241,802 ha (597,510 acres) of crops and killed millions of cattle and chicken. Across Andhra Pradesh, the storm damaged 647,554 houses, including over 10,000 that were destroyed. Overall damage totaled RS$21.5 billion (US$602 million), comparable to a cyclone in 1977 that also hit Andhra Pradesh. There were 1,077 confirmed deaths with many others missing, although many of the dead were washed into the sea and were unlikely to be found. After the storm, the government and local Red Cross chapters helped residents recover from the damage, while the World Bank provided money to better prepare Andhra Pradesh for future storms.
Originating from the monsoon trough, a well-defined circulation persisted on November 26 near the Andaman and Nicobar Islands, accompanied by a poorly defined area of convection. It formed in an area of moderate wind shear, allowing the system to slowly organize while moving to the west-northwest. Both the IMD and the JTWC initiated warnings on November 28, the latter classifying it as Tropical Cyclone 08B. On November 29, the storm turned to the north and east, beginning a four-day loop in the central Bay of Bengal; the JTWC noted that it was the longest-lasting loop on record in the body of water. During this time, the system remained weak, never intensifying beyond deep depression status. A strengthening ridge to the north turned the storm back to the west on November 30 into an area of lighter wind shear. On December 2, the system intensified into a cyclonic storm and eventually to a very severe cyclonic storm on the next day, with the IMD estimating peak 3-minute winds of 120 km/h (75 mph). The JTWC upgraded the system to the equivalent of a hurricane on December 4, estimating peak 1-minute winds of 140 km/h (85 mph). Increased wind shear decoupled the convection from the center; the thunderstorms continued to the west-northwest and struck Andhra Pradesh, while the circulation turned southwestward. Weakening further, the system made landfall on Tamil Nadu between Chennai and Pondicherry around 16:00 UTC on December 6. It rapidly weakened over land, dissipating the next day.
Ahead of the storm, about 200,000 people evacuated the Indian coastline, following the damaging cyclone that struck Andhra Pradesh a month earlier. Officials used buses and trucks to transport residents in nearly 500 villages. Officials warned fishermen not to go out to sea during the storm. To prevent accidents, workers closed roads and shut off power ahead of the storm. Two people died in Andhra Pradesh while the storm was still offshore, one due to a house collapsing and the other due to a fallen tree. Heavy rainfall related to the cyclone killed two people before the system moved ashore. The storm dropped heavy rainfall in Andhra Pradesh and Tamil Nadu. Winds in Chennai reached 100 km/h (62 mph), strong enough to knock down trees and cause accidents; one motorist was killed by a tree near Madras Municipal Airport. Overall, the storm resulted in seven fatalities.