Give crawlers a map
Two files do most of the heavy lifting:
sitemap.xml— a list of every page you want indexed, submitted to Google Search Console. It does not force indexing, but it is the fastest way to tell a search engine a page exists.robots.txt— instructions at the root of your domain telling crawlers which sections to skip (admin panels, duplicate filtered pages, staging environments).
A clean, shallow site structure with a sitemap makes every page easy to discover.
Canonical tags stop duplicate-content confusion
If the same content is reachable at more than one URL (with and without www, with tracking parameters, printer-friendly versions), a <link rel="canonical"> tag tells search engines which URL is the "real" one to index and rank, consolidating signals instead of splitting them across duplicates.
Mobile-friendliness and HTTPS are table stakes
Google indexes the mobile version of your site by default (mobile-first indexing), so a page that looks broken on a phone is effectively broken for SEO too. HTTPS (the padlock icon) has been a baseline ranking requirement for years — an HTTP-only site is actively penalised, not just neutral.
Google Search Console's "Pages" report shows exactly which URLs are indexed and why others are excluded — check it monthly, it is free and it is the ground truth.