Zimbabwe beat Uganda 26-19 in the World Rugby HSBC SVNS 3 Africa Qualifiers final at Kyadondo Rugby Grounds on Sunday to earn promotion.
Uganda raced to a 12-0 lead through tries from Daniel Otim and Malcolm Okello before the home crowd.
PK Manyakara scored twice for Zimbabwe to make it 12-5 at half-time.
Tatenda Kamubvumbi levelled the scores early in the second half.
Manyakara then put Zimbabwe ahead after a turnover forced by Dion Khumalo.
Nobert Okeny sprinted the length of the field to bring Uganda back into the match.
Tavonga Ablant crossed in the corner to seal Zimbabwe's victory as the referee blew the final whistle.
"Trust me, the win feels surreal," Zimbabwe captain Tapiwa Malenga said.
Zambia finished fourth after losing 19-17 to Morocco in the bronze medal match.
Zambia had earlier pushed Uganda to a 19-14 win in Pool B and fought back from 19-0 down to draw 19-19 against Zimbabwe in the semi-final.
Trevor Gurwe scored a last-gasp try to send Zimbabwe through to the final.
Final standings
- Champions: Zimbabwe (promoted to SVNS 3)
- Runners-up: Uganda
- Third place: Morocco
- Fourth place: Zambia
Key scorelines from the tournament
- Final: Zimbabwe 26-19 Uganda
- Bronze match: Morocco 19-17 Zambia
- Pool B: Uganda 19-14 Zambia
- Semi-final: Zimbabwe 19-19 Zambia (Zimbabwe won on last-gasp try)
Source: Scrummage Africa

