The origin of the various names used since classical times for the people known today as the Celts is obscure and has been controversial. It appears that none of the terms recorded were ever used by Celtic speakers of themselves. In particular, there is no record of the term "Celt" being used in connection with the inhabitants of the British Isles or Ireland prior to the 19 th century.
The name "Gauls"
English Gaul(s), French Gaul(es), Latin Gallus or Galli might be from an originally Celtic ethnic or tribal name (perhaps borrowed into Latin during early, 400 BCE, Celtic expansions into Italy). Its root may be the Common Celtic *galno-power or strength. Greek Galatai seems to be based on the same root, and may have been a loan from Latin, or some other Italic dialect, if it wasn't itself borrowed directly from the same hypothetical Celtic source which gave us Galli (the suffix -atai is simply an ethnic name indicator).
The word "Welsh"
English Welsh, French Gallois ("Welsh"), etc. are Germanic words, yet they ultimately have a Celtic source. They are the result of an early borrowing (in the fourth century BCE) of the Celtic tribal name Uolcae ("Falcons" in Gaulish) into Primitive Germanic (becoming the Primitive Germanic *Walh-, "Foreigner" and the suffixed form *Walhisk-).
The Uolcae were one of the Celtic peoples that barred, for two centuries, the southward expansion of the German tribes in central Germany on the line of the Hartz mountains and into Saxony and Silesia.
The name "Celts"
English Celt(s), Latin Celtus or Celti (Celtae), Greek Keltos or Keltoi seem to be based on a native Celtic ethnic name (singular *Celtos or *Celta with plurals *Celtoi or *Celta:s), of unsure etymology. The root would seem to be a Primitive Indo-European *kel- or (s)kel-, but there are several such roots of various meanings to choose from (*kel- "to be prominent", *kel- "to drive or set in motion", *kel- "to strike or cut" etc.)