In a post on Twitter, Mexican President Enrique Pena Nieto said: “Mission accomplished: We got him.”
Guzman was one of the world’s most-wanted drug lords, whose Sinaloa cartel smuggled cocaine, heroin and methamphetamines to the US.
He escaped from jail through a 1.5km (mile) long tunnel dug in the showers.
The US had offered a $5m (£3.2m) reward for information leading to his capture.
AP reports that Guzman was apprehended following a shootout with Mexican marines in Los Mochis, a coastal city in his home state of Sinaloa.
Mr Pena Nieto said on Twitter: “I want to inform Mexicans that Joaquin Guzman Loera has been arrested.”
Guzman’s July escape was his second – he was first arrested in Guatemala in 1993 and escaped from Puente Grande jail in 2001, reportedly in a laundry cart.
He was on the run for 13 years before being held again in 2014.