To block AI crawlers on Duda, upload a custom robots.txt file through the Optimization Center: open Additional Settings, use the custom sitemap, robots.txt and other files option, and replace the auto-generated file with your own. Duda serves your uploaded file at your domain's robots.txt address, and crawlers that respect robots.txt will follow it. The whole job takes about fifteen minutes once your file is written.
There is one important limit to know before you start. Duda's own support pages say the custom files option is available in Editor 2.0 and Classic projects, and is not available for Duda Vibe projects. If your site runs on Duda Vibe, you cannot upload a custom robots.txt file this way, and you need the fallback options near the end of this guide instead.
Why Duda sites need a custom file
Duda generates a robots.txt file and a sitemap for every site automatically. That default file is built for ordinary search engines. It does not name AI training crawlers, because those bots did not exist in their current form when the defaults were designed. So a Duda site left on defaults is open to GPTBot, ClaudeBot, CCBot, and the other training crawlers, even if the owner would rather opt out.
Uploading a custom file replaces the default. That is the key point: you are not editing a line inside Duda's file, you are swapping the whole file for your own version. Your version must therefore keep the good parts of the default, such as allowing Googlebot and Bingbot, and add the AI rules on top. A file that only lists AI blocks and forgets to allow search engines can do more harm than the default ever did.
Step 1: Write your robots.txt file first
Write and test the file before you touch Duda. The fastest way is to build it with a free robots.txt generator, then check it with a robots.txt tester. Test a homepage, an article page, and a page you want blocked, for Googlebot and for each AI bot you named.
A sensible starting template for most Duda sites blocks training crawlers and allows search crawlers:
User-agent: GPTBot Disallow: / User-agent: ClaudeBot Disallow: / User-agent: Google-Extended Disallow: / User-agent: CCBot Disallow: / User-agent: OAI-SearchBot Allow: / User-agent: PerplexityBot Allow: / User-agent: Googlebot Allow: / User-agent: Bingbot Allow: / User-agent: * Allow: / Sitemap: https://www.example.com/sitemap.xml
Replace the example sitemap address with your real one. The Allow lines for search bots are not strictly required when nothing else blocks them, but they make your intent clear to the next person who edits the file, and they protect you if a wildcard block is added later by mistake.
Decide your own split before you publish. If you want no AI visibility at all, change the search bot lines to Disallow as well. If you run a business that benefits from AI answers, keep the search bots allowed. There is no single right answer, but there is a wrong one: copying a block list without reading it, and finding out later that you blocked the search bots that were sending you visitors.
Step 2: Upload the file in Duda
Duda's support documentation describes the path this way: open Additional Settings from the Optimization Center, then use the custom sitemap, robots.txt and other files option. From the project dashboard, click Performance, expand Optimization Center, and click Additional Settings. In the editor, click SEO in the side panel, then Optimization Center, then Additional Settings. In Duda Vibe, the same area sits under the Manage tab, but the custom files option itself is not available there, as noted above.
Upload your robots.txt file through that option and save. Duda then serves your file at the root of your domain. The upload replaces the auto-generated file, so keep a copy of your version somewhere safe. If you ever need to change one bot rule, you will edit your copy and re-upload it, not patch the live file in place.
Step 3: Verify the live file
Verification is not optional, because an upload that looks successful can still serve an old cached file. Open your domain followed by /robots.txt in a browser and read it line by line. Check three things:
- The AI bot names you wrote are present and spelled exactly right. GPTBot, ClaudeBot, and CCBot are case-sensitive tokens.
- Googlebot and Bingbot are allowed, and the sitemap line shows your real sitemap address.
- No full-site block survived from a template or a copied example. A Disallow line for the wildcard group blocks everyone.
If the live file shows the old default, wait and check again. Content delivery caches can hold the old version for a while. Do not upload a second, different file while the first is still propagating, or you will lose track of which version is live.
Step 4: Handle individual pages
Robots.txt works at the path level, so one file can also protect specific areas of a Duda site. Add Disallow lines for folders that hold client work, draft pages, or internal tools, and repeat those lines in each bot group that needs them. Remember that a bot follows only its own group, or the wildcard group when it has none. A rule written only in the wildcard group does not apply to a bot that has its own group elsewhere in the file.
For single pages rather than folders, Duda's per-page SEO settings are often a better tool than robots.txt. The platform offers index and noindex controls per page, and a noindex page is a clearer signal for search engines than a robots.txt block. Use robots.txt for crawler control across folders and bot types, and use per-page settings for individual pages you do not want indexed.
What to do on Duda Vibe
If your project is on Duda Vibe, the custom files option is not available, so you cannot upload a custom robots.txt file. Your realistic options are narrower, and it is better to know that plainly than to chase a setting that does not exist.
- Use the site-wide noindex option in Additional Settings if the whole site should stay out of search and AI results. This is a blunt tool, so only use it when the whole site is private or in progress.
- Use per-page noindex settings for pages that should not be indexed, and keep the rest of the site open.
- Ask your agency or Duda support whether the project can be moved to Editor 2.0, where custom files are supported. Do not assume a move is free of side effects; check templates and widgets first.
- For a public business site on Vibe, accept the trade-off for now: you can control indexing, but you cannot send a targeted robots.txt opt-out to AI training crawlers from inside Duda.
This is a genuine platform limit, not a trick you can work around from inside the editor. If AI training opt-out matters more than the Vibe workflow, the platform choice itself is the decision, and it is worth making deliberately rather than discovering the limit after launch.
What robots.txt will not do on Duda
Three limits apply on Duda just as they do everywhere else, and they are worth stating before you rely on the file.
First, robots.txt is a request, not a lock. Crawlers from reputable vendors say they follow it, but a scraper that ignores the file will ignore it on Duda exactly as it would anywhere else. If you see a bot in your logs after blocking it, the file is not broken; the bot is not complying.
Second, robots.txt does not hide a page. A blocked page can still be reached by anyone with the address, and it can still appear in search results if other sites link to it. Private client pages need a login or a membership wall, not just a robots.txt line.
Third, user-triggered fetches may bypass robots.txt. When a person asks a chatbot to read a specific page, the fetcher may not be bound by the same rules as a crawler. OpenAI has said this about its user-triggered fetcher. So robots.txt is the right first layer for crawler control, but it cannot promise that no AI system will ever see a public page.
Keeping the file correct over time
AI bot names change. Vendors split one bot into two, rename a token, or launch a new crawler. Check your file once a quarter: re-read the vendor documentation for the bots you named, confirm the tokens are still current, and test the live file again. Also re-check after any Duda template change, because a major editor change can reset site settings.
Keep a simple change log for the file, even if it is just a dated note in your own docs: what you blocked, what you allowed, and why. The most common robots.txt failure months later is not a technical one. It is a person editing a file they do not understand, removing a rule that was there for a reason, and nobody remembering what that reason was.
FAQ
Can I edit robots.txt directly in the Duda editor?
Not line by line. You upload a complete replacement file through the custom files option in Additional Settings. Edit your copy, test it, then upload the new version.
Does Duda's auto-generated robots.txt block AI crawlers?
No, not by default. The auto-generated file is built for search engines. You need a custom file to add AI training opt-outs.
Will blocking GPTBot remove my Duda site from ChatGPT answers?
No, not by itself. GPTBot is the training crawler. ChatGPT search uses OAI-SearchBot, which is a separate token. Block GPTBot and allow OAI-SearchBot if you want to opt out of training but stay eligible for ChatGPT search answers.
Does this work on Duda Vibe?
No. Duda's support pages state the custom files option is for Editor 2.0 and Classic only, and is not available for Duda Vibe projects. Use per-page or site-wide noindex controls there, or consider a project type that supports custom files.
How long does a robots.txt change take to work?
Well-behaved crawlers pick up the new file on their next visit, which can be hours or days depending on crawl frequency. OpenAI has said search changes can take about a day to register. Do not judge a change ten minutes after uploading it.
Should I block every AI bot on a Duda business site?
Usually not. A local business, a portfolio, or a blog often gains from AI search answers. Blocking training bots while allowing search bots is the balanced setup for most Duda sites. Block everything only if you have a clear reason to stay out of AI answers entirely.