The actor was asked whether he will play the secret agent again during his appearance on US chat show The Late Show.
“Yes,” Daniel Craig told host Stephen Colbert, before standing up to shake his hand.
The actor, who has played 007 in the past four Bond films, has until now refused to say whether he will do it again.
But on the show he revealed he’s known for a “couple of months”.
“We’ve been discussing it, we’ve just been trying to figure things out,” he said. “I always wanted to, I needed a break.”
The next Bond film, the 25th in the series, is due out in November 2019.
He said it will be his last outing as the spy.
“”I think this is it. I just want to go out on a high note, and I can’t wait.”
The 49-year-old was still refusing to confirm speculation about it as late as Tuesday.
Scottish star Sean Connery first took on the role in 1962 and played him seven times, ending with Never Say Never Again in 1983.
Roger Moore matched that total, between 1973 and 1985.
David Niven and George Lazenby each played him once during the 1960s, while two films were released with Timothy Dalton in the lead role, The Living Daylights (1987) and Licence to Kill (1989).
Daniel succeeded Pierce Brosnan as Bond and made his debut in Casino Royale in 2006.
He has since played the spy in Quantum of Solace (2008), Skyfall (2012) and Spectre (2015).