The name India is derived from Indus, which originates from the Old Persian word Hinduš. The latter term stems from the Sanskrit word Sindhu, which was the historical local appellation for the Indus River. The ancient Greeks referred to the Indians as Indoi, which translates as "the people of the Indus".
The geographical term Bharat, which is recognised by the Constitution of India as an official name for the country, is used by many Indian languages in its variations. It is a modernisation of the historical name Bharatavarsha, which gained increasing currency from the mid-19th century onwards as a native name of India. Scholars believe it to be named after the Vedic tribe of Bharatas in Punjab in the second millennium B.C.E. However, traditionally, it is associated with the rule of the legendary emperor Bharata. Gaṇarājya (literally, people's State) is the Sanskrit/Hindi term for "republic" dating back to the ancient times.
Hindustan is an ancient Persian name for India dating to 3 century B.C.E. It was introduced into India by the Mughals and widely used since then, often being thought of as the "Land of the Hindus." Its meaning varied, referring to a region that encompassed northern India and Pakistan or India in its entirety.