To build your a WordPress website you will need to organise three separate items. These are
Never buy your domain, hosting and DNS management from the same organisation. In that direction lies potential frustration. One day you will become unhappy with your hosting service - it happens to us all - and you'll want to change it.
In some cases, if your host has also provided your domain name and DNS management, you may meet resistance when trying to extricate yourself and move to another host. You can eliminate any chance of this happening, by taking the advice in this step, which is to get each item from a separate provider.
Buy each domain you need from a domain name registrar, such as Namecheap - or some other reputable domain name registrar. When you buy a domain name at Namecheap your domain name will be provided with Namecheap's Basic DNS.
Manage the domain’s DNS at Cloudflare (free). To do this having bought your domain, go to Cloudflare and add the new site to your Cloudflare account using their free option. When you add your site you will be given a pair of DNS that look a little like this :
All you do now, is go back to your Namecheap account and select Custom DNS instead of Basic DNS, and you will be given two slots where you can place the pair of DNS provided by Cloudflare.
If you're using them, you will need to add the sub-domains you require too. Having added the main domain to Cloudflare, make sure you add each sub-domain of choice to the Cloudflare settings under the main domain.
This is achieved by adding a CNAME record to the main domain to indicate the sub-domain. Once you have done that, you can head back to GridPane, or your host, to initiate a new WordPress installation, and you can instruct it to be built at the sub-domain.
Buy your hosting from a good quality hosting provider - for example, I use GridPane.