You can set a Jekyll page or post to be hidden by adding
published: false to the front matter.
The post/page will not go through the generator, so it’s not live anywhere (you can’t preview it).
I did find that if you want to preview a page without it adding the link to the site header you can add
hide: true to the front matter. Although, I’m not sure yet if this is specific only to my theme or if it’s a Jekyll standard.