1. Is the page published?
Creating a page does not publish it. A page with no publish date exists, is editable, and is invisible to visitors. This is the cause most of the time — check it first.
2. Is every parent published?
This is the one that surprises people. A published page inside an unpublished section is still unreachable, and so is everything beneath it. Publishing the section can light up a dozen child pages at once, without touching any of them.
So walk the whole chain up to the home page, not just the page itself. If a section and its children all 404 together, suspect the section rather than the children.
3. Is it scheduled?
A page can carry a publish-at date in the future, or an unpublish-at date in the past. Either makes it unavailable now while still looking published in a listing.
4. Is the address what you think?
A page's address is built from its slug plus its parents' slugs. Renaming a page may not change its slug, and setting a custom URL replaces the built path entirely — including for links generated elsewhere on the site. A custom URL pointing somewhere that does not resolve produces exactly this symptom, and it is easy to miss because the page itself is fine.
5. Check it the way a visitor would
While you are signed in to the admin, the site shows you unpublished content on purpose. That means your own browser is the least reliable place to test. Open the page in a private window, or ask someone who is not signed in.
Still stuck?
If the page is published, every parent is published, the dates are clear and the address is right, the problem is no longer content — pass it to a developer with the exact URL you tried and what you saw.