Chief executive Tony Hayward said a cap lowered on to the well on the seabed had collected "about 10,000 barrels" of oil in the previous 24 hours.
The cap – installed by robot submarines a mile below the sea surface last week – is capturing "the majority, probably the vast majority" of the oil, the BP chief said.
The company is also working on a "more permanent solution", likely to be in place by the end of the month and designed to resist the fast approaching hurricane season.
Two relief wells meanwhile are being drilled below the seabed to intercept the spilling well, although these will not be completed until August.
The company has also launched huge efforts to tackle the spill on the surface and protect the coast but has still come under intense fire in the US.
BP has already spent more than one billion US dollars (682m) on containment and clean-up efforts since the Deepwater Horizon rig exploded and sank on April 20, killing 11 workers.
Mr Hayward said everyone at BP was "devastated" at the disaster and said safety standards in the industry would have to be taken to a "completely new level".
He added that seven separate layers of protection were breached to cause the accident, making the spill a 100,000-to-1 or even a million-to-1 occurrence.
But he said he had the support of the board and no intention of resigning over the catastrophe.
BP has also faced pressure to cut the firm's dividend, which would impact millions of pension savers, as BP accounts for 1 in every 7 of blue-chip dividends paid every year.
Mr Hayward refused to say whether the company would cut the dividend, saying the board would make the decision at the end of July, but said the firm would "take care of all of our stakeholders".
The company's shares have been pounded by the spill but he added: "(BP) has the wherewithal to weather this storm and come back strongly."
US President Barack Obama has attacked the firm for not scrapping the dividend and warned the US government would ensure the company pays compensation to those affected by the disaster.
He said: "I don't want somebody else bearing the costs of those risks that they took. I want to make sure that they're paying for it."
Mr Heyward insisted BP was going to stop the leak and take care of the longer-term consequences.
He said: "We're going to clean-up the oil, we're going to remediate any environmental damage and we are going to return the Gulf coast to the position it was in prior to this event. That's an absolute commitment."