As far as I think, neither. Let me explain.
If you have one username for all of your accounts (hyphen or not), then use that username.
But this is very unlikely for most people. If you pick a username, most of the time, you have to use that forever (Ex: Google). In addition, to pick the desired username, that username should be available in the first place. If that username is already taken, then you have to select something else.
Furthermore, some websites don't let you pick a username. You have to get what they gave to you. For example, in Quora, the username will be automatically created based on your name and it will be created with a hyphen (Justin-Bieber). So, you don't have a choice there.
Other websites like StackExchange won't give you a username at all. They give you a number (670***). Not to mention, some websites add additional paths such as 'In', 'User", 'Profile", etc to the URL. (Ex: linkedin.com/in/justinbieber/)
No matter how careful you're, you're always not getting the perfect username. Therefore, my recommendation is, if you want a better URL (or a username), buy a domain in your name (or in your brand) and use it to link (redirect) all of your profiles. This way, you have the control of your usernames and URLs. It's good for the writability, style, SEO, etc.
Here is an example...
JustinBieber.com/Instagram
- Redirect to https://www.instagram.com/justinbieber
JustinBieber.com/Quora
- Redirect to https://www.quora.com/profile/Justin-Bieber
JustinBieber.com/LinkedIn
- Redirect to https://www.linkedin.com/in/justinbieber/
JustinBieber.com/Instagram
JustinBieber.com/YouTube
JustinBieber.com/Twitter
JustinBieber.com/Quora
JustinBieber.com/Wikipedia
JustinBieber.com/LinkedIn
JustinBieber.com/StackExchange