Thanks for the replies thus far
I wouldn't mind getting the Mate 7/8 but that's a bit out of my price league at this stage hence the decision between G8 or P8
Have you considered a "no name brand" like a Xiaomi Note 2 or a Meizu. Any shortcoming is so marginal its absurd.
These devices sell for less than R3k and does everything a high end unit does.
Take out a cheap contract with crappy phone but use the Note 2 which has a dual sim. You can either keep the crappy phone as a backup or you can sell it.
After a year or less you can purchase another no name brand and keep/sell your current device.
The advantage of going this route is that you're not locked in with an expensive device that's not worth much when your contract expires in 2 years.