An announcement from the office of US PGA Tour commissioner Jay Monahan said the 12-week ban would allow Every to return to the tour on January 7, 2020.
Every, the eighth player to be suspended since PGA Tour drug testing began in 2008, will miss only three tournaments for which he would have been eligible.
The tour did not reveal what substances were involved or precisely when the violation was determined.
Every, a 35-year-old Floridian, has won twice on the PGA Tour, taking the 2014 and 2015 Arnold Palmer Invitational titles at Bay Hill, reaching a career-high 40th in the world rankings by defending his crown.
His best finish in 11 major starts was his first, sharing 28th at the 2005 US Open to take the low amateur award. He missed the cut seven times and has not played in a major since the 2015 PGA Championship.
Every, ranked 253rd in the world, played twice in late 2018 to open his 2018-19 campaign, which saw a top finish of second at the Byron Nelson.
He has already played in the first five events of the 2019-20 US PGA season, sharing 18th at Las Vegas two weeks ago and 28th last week in Houston.