Contracts have not been signed, but the 185-pound contest is expected to become official shortly. The fight will headline UFC Fight Night on Aug. 21 at a location to be determined.
Costa (13-1) has not fought since he came up short in a title bid against Israel Adesanya in September. The 30-year-old Brazilian was scheduled to face Robert Whittaker last month but was forced to withdraw due to medical issues.
Cannonier (13-5) is coming off a loss to Whittaker in a three-round non-title fight in October. The loss snapped a three-fight winning streak for Cannonier.
The bout figures to have a major impact on the middleweight division. Adesanya, the current champion, is scheduled to defend his title against Marvin Vettori in June.