WordPress generates a virtual robots.txt file automatically at yourdomain.com/robots.txt. You won't find it as an actual file in your hosting file manager or FTP unless you've manually created one. To view it, simply navigate to yourdomain.com/robots.txt in your browser. WordPress creates this virtual version through its core code, serving basic directives that point to your sitemap and disallow crawling of certain admin areas. If you need to customize robots.txt beyond what WordPress provides, you have three main options. First, use an SEO plugin like Yoast SEO or Rank Math, both of which include built-in robots.txt editors accessible from their dashboard menus under Tools or Settings. Second, create a physical robots.txt file and upload it to your site's root directory (public_html or www folder) via FTP, cPanel File Manager, or your hosting control panel. The physical file will override WordPress's virtual version. Third, use the robots_txt filter in your theme's functions.php or a custom plugin to programmatically modify the output. At Ottawa SEO, we typically use the physical file approach for production sites because it gives you complete control and survives plugin changes or WordPress updates. You can edit it directly through cPanel or download it, modify it locally, and re-upload. Just make sure your hosting account has write permissions to the root directory. Common mistakes to avoid: don't create robots.txt in a subdirectory, it must be in the root. Don't accidentally block important pages like /wp-content/uploads/ where your images live, since that prevents Google from indexing media. And never put sensitive information in robots.txt because it's publicly accessible. If you're running a multisite WordPress installation, each subsite will need its own robots.txt configuration, which gets more complex. Test your robots.txt in Google Search Console under the Index Coverage tools after making changes to confirm Google can read it properly and you haven't accidentally blocked critical resources.