The general cause of a subdomain on Cloudflare not working on a site is that you haven't added it in your zone file for the domain.
You can add a subdomain by following this guide: How do I add a subdomain
It should either be an A Record (in which case you need the IP address it needs to point to) or a CNAME (in which case you'll need another subdomain for it to point to).
Example using a blog subdomain:
A blog points to server IP address (insert server IP address in field)
CNAME blog is an alias of (insert your domain.com)