The name of the Karatoya River is mentioned in the Indian Puranas and had a high repute for sanctity. It was the eastern boundary of the old kingdom of Paundravardhana, the country of the Paundras, which it separated from Kamrupa Kingdom. There was a great change in the course of the river for the tectonic disturbances since 1500. Although positive evidence is lacking, similar changes can be assumed in the remoter past. The Karatoya is one of the rivers that have changed over the years.
This river, which is also known as Phuljhur River rises from the jungles of Baikunthapur in the extreme north-west of Jalpaiguri district and forms for some distance the boundary between Dinajpur and Rangpur districts. After that it forms a meander through Rangpur and Bogra District. In the south of Bogra district, it receives with the Halhalia Stream and the united stream is then known as Phuljhur. It leaves Bogra at Chanda kona and flowing in a southerly direction past Raiganj and Shujapur is, as already mentioned, joined by Ichhamati River at Nalka. The Phuljhur then flows south past the important village of Ullapara, a few miles below which it joins the Hurasagar at Narnia after a course of about 40 miles in this district. After this junction, it takes the name of Hurasagar and passing close by Shazadpur of Bangladesh and Hera joins the Jamuna near Ber.
In the first modern physical map of undivided Bengal, graphed by the cartographer Ven den Brouck prepared in 1660 shows this river as a large channel, and later in the map of Rennell, prepared in 1776 this Karatoya River shows as a major river in the Northern part of Bengal. As late as 1810, Buchanan-Hamilton wrote that this river was 'a very considerable river'. The decline however, came so rapidly after the 1820 flood that the old banks of the river are traceable. The river was formerly sacred to the Hindus, as the derivation of the name shows. The name Karatoya River is derived from the word "Kar" (hand) and "Toa" (water) signified that the water, which was poured on the hands of Lord Shiva, when he married the Goddess Parvati, formed the river.
The frequent tectonic disturbances had broken the river into four distinct parts. This river system by the rivers Karatoya, Atrai, Gur, Gumani and Hurasagar has a total length of about 597 km. The northern part, called the Dinajpur-Karatoya, is the main source of the Atrai. It rises in a marsh in Baikanthapur in Jalpaiguri region but also receives water from underground streams. In Khansama upazila its name changes to Atrai.
The Dinajpur-Karatoya was connected with the Rangpur-Karatoya north of Khansama, but very little water now passes down that channel. The upper part of Rangpur-Karatoya is also originated in the Jalpaiguri district and is known as the Deonai-Jamuneshwari up to Gobindaganj Upazila.
The Jamuneshwari-Karatoya flows in slight meanders south-southeast to Gobindaganj Upazila where the main stream turns east through the Katakhali and falls into the Bangladesh. The portion of the former river passing through Shibganj Upazila is dry most of the year. It effectively separates the Rangpur-Karatoya from the Bogra-Karatoya. The Bogra-Karatoya river flows through the South where Bogra town is situated. When the same river flows in to Bangladesh, thus it named as Phuljhor River. This river falls into the Hurasagar. The maximum discharge of the water of the Bogra-Karatoya Riveris below 3,000 cusec. In addition, it declined rapidly since the construction of the Brahmaputra Right Embankment. The fourth part, the Pabna-Karatoya, is a declining riverbed near Handial. Various other channels are also pointed out as parts of the Old Karatoya.