Having played under-19 level cricket for Trinidad and Tobago Bravo made his first team debut in January 2007, he scored seven in a one-day match against Guyana. He made his first-class debut three days later against the Leeward Islands and scored eight. After another single figure score in his next match against the Windward Islands he made no other appearances in the 2006/07 season. He returned to the under-19 team for the TCL Under-19 Challenge and finished the tournament as leading run scorer, in five matches scoring 419 runs at an average of 59.85.
In preparation for the 2008 Under-19 World Cup the West Indies under-19s competed in the 2007–08 KFC Cup. Bravo played for the side in two matches, the first saw his team dismissed for a one-day record low total of 18, Bravo was one of six players who was dismissed without scoring. Bravo described it as a learning experience saying: "Collins was getting a lot of movement and Edwards was bowling very fast. It was difficult to get them away but the experience was good for us and it came in handy in the other games." At the under-19 World Cup Bravo played in all five of West Indies matches scoring 165 runs at 55. In the plate final against Nepal he took three wickets for nine runs (3/9) and scored 24 not out. Bravo finished the 2007/08 season with two first-class matches but failed to score a substantial innings with a best of 29.
In October 2008, Bravo was a member of the Trinidad and Tobago squad for the Stanford Series. Having failed to play in the first match against the Super Stars he came into the side for the next match against Middlesex and scored 27 not out including hitting the winning runs with a six over long-on. His domestic form in the 2008–09 season was much improved from the previous season, in the WICB Cup which Trinidad and Tobago won he scored 41 in the semi-final run chase against Jamaica and added 20 in the final against Barbados. In first-class cricket he scored 97 against Barbados, in a team score of 264 he was the last man out after 330 minutes of batting. Later in the month of January he scored a maiden first-class century against the Windward Islands, his innings of 105 included 13 fours and a six. The form led to his selection for West Indies A however an injury meant he missed the fixture against the England tourists. On his return to first-class cricket Bravo scored a second century of the season, against Barbados he added 111 and shared a 250 run partnership for the fourth wicket with Kieron Pollard. In the following match against Jamaica he scored 41 and 70 also equalling a Trinidad and Tobago record by taking five catches in the second innings. Older brother Dwayne praised his form saying: "He had been good with the bat and I am happy to see that he has been very consistent this season". Dwayne failed to pass 30 in his final four matches of the season but still ended the season with 605 runs at 43.21.I
In June 2009, Bravo was called up to the West Indies squad for the first two ODIs of the series with India. He made his international debut in the first ODI at Sabina Park scoring 19 from 16 balls, including two fours from the first two deliveries he faced. On his Test debut Bravo scored 58 from 159 balls against Sri Lanka. He went on to hit 80 in the second Test and 68 in the third Test to leave him with a tour average of 68.66.
The West Indies first engagement after the 2011 World Cup was hosting Pakistan at home. In the two-Test series, Bravo was the only West Indies batsman to score over 100 runs. In October the West Indies toured Bangladesh. After contributing scores of 2 and 24 not out in the drawn first Test, Bravo scored his maiden Test century in the second to help his team to a 1–0 series victory. The innings of 195 from 297 balls was the ninth highest score by a West Indian batsman in the subcontinent.
Though Bravo was bought by the Deccan Chargers for $100,000 at the 2012 Indian Premier League auction, but missed the competition because it clashed with Australia's tour of the West Indies in March and April. After scoring just 48 runs in the five-match ODI series, Bravo was dropped for the T20Is against the same opponent so he could return to domestic cricket to find form ahead of the Test series. With 184 runs in three Tests, Bravo was the West Indies' second-highest run-scorer in the series behind Shivnarine Chanderpaul and sixth overall.
In the first match of the 2013/14 Test series against New Zealand in Dunedin, Bravo made a fighting maiden double-century after nearly 10 hours of batting to help the West Indies to an unlikely draw.