DUDA SEO AUDIT · AGENCY WEBSITE BUILDER · MULTI-SITE

Free Duda SEO Audit

Duda's built-in SEO tab handles title tags, meta descriptions, and the auto-generated sitemap — but JSON-LD structured data, hreflang for multilingual sites, and AI visibility require Custom HTML widgets and manual configuration. DeepSEOAnalysis crawls your live Duda site and validates every layer: meta tag output, structured data in Custom HTML blocks, sitemap coverage, real CrUX Core Web Vitals from actual Chrome users, and all five AI visibility signals — with Duda-specific editor paths for every finding.

Audit my Duda site →How we score

WHAT WE CHECK

6 Duda-specific SEO checks

Duda SEO auditing covers the built-in SEO tab configuration and meta tag output, URL structure and redirect management, JSON-LD via Custom HTML widgets, the auto-generated XML sitemap, Core Web Vitals from real CrUX field data, and AI visibility — with Duda editor navigation paths for each finding.

🔧

Duda SEO tab configuration and meta tag output

The Duda SEO tab in each page\'s settings controls the title tag, meta description, and page-level noindex. The audit validates what Duda actually outputs in the rendered HTML. The audit checks: title tag presence and quality on all crawled pages (each page must have a unique, keyword-relevant title — Duda\'s default page titles use the page name, which is often too generic for ranking; set title tags via Pages menu → three-dot → SEO Settings → Title); meta description presence and length (50–160 characters, unique per page — Duda\'s default is no meta description, which means Google auto-generates one from page content); canonical URL format (Duda outputs `link rel="canonical"` pointing to the published domain — verify this matches the configured primary domain in Site Settings → General → Site Domain, as sites with multiple connected domains may produce canonical mismatches); Open Graph tags (og:title, og:description, og:image — configured in Site Settings → SEO → Social Sharing for site-level OG and in individual page SEO Settings for page-level overrides); noindex implementation (pages marked as hidden in Duda\'s page settings should output `meta name="robots" content="noindex"` — check that the "Hide from Search Engines" checkbox in page SEO Settings translates correctly to the rendered robots meta); and robots.txt configuration (review the custom robots.txt in Site Settings → SEO → Robots.txt for incorrect global disallow rules that may block entire sections of the site from crawling).

🔗

URL structure and redirect configuration in Duda

Duda generates URLs from page names with hyphens replacing spaces and URL-unsafe characters stripped. The audit checks: URL slug quality (Duda page URLs are based on the page name — short, keyword-descriptive page names produce clean URLs like /services or /contact-us; long or generic page names produce poor URLs like /our-services-in-the-new-york-metro-area — the page URL can be customised in Page Settings → SEO Settings → Page URL, which should be done for all SEO-critical pages); URL depth and hierarchy (Duda supports sub-pages creating /parent/child URL structure, but sub-pages buried more than 2–3 levels deep receive less crawl authority — check that important content pages aren\'t nested unnecessarily deep); trailing slash consistency (Duda serves pages with a trailing slash — /about/ — verify the canonical tag matches and that both /about and /about/ don\'t simultaneously return 200 responses, which creates duplicate content); redirect chains (in Site Settings → SEO → Redirects, check for redirect chains — multiple hops before reaching the destination dilute link equity and slow page load; each redirect should go directly to the final destination URL); and 404 page configuration (Duda\'s 404 page should be customised with relevant internal links to guide users back into the site rather than the default Duda 404, which may not link to any site content).

📋

JSON-LD structured data via Duda Custom HTML widgets

Duda requires JSON-LD to be added manually via Custom HTML widgets. The audit checks structured data presence and correctness across crawled pages. For the home page: `WebSite` JSON-LD with `SearchAction` (enables sitelinks search box in Google), `Organization` with name, URL, logo, and `sameAs` social profile URLs — inject via Site Settings → SEO → Site-wide head tags. For blog/article pages: `Article` JSON-LD with `headline` (page H1), `datePublished`, `dateModified`, `author` (person or organisation), `image`, and `publisher` — inject via a Custom HTML widget at the bottom of each blog post template (in Duda\'s Dynamic Pages feature, this widget is shared across all posts in the collection). For service/product pages: `Service` or `Product` JSON-LD with name, description, provider/brand, and `offers` including price range. For FAQ content: `FAQPage` JSON-LD with `mainEntity` array containing each `Question` and `acceptedAnswer` — inject via Custom HTML widget on any page with a FAQ section. For local business sites: `LocalBusiness` JSON-LD (or the specific business type — `Restaurant`, `Dentist`, `LegalService`) with address, telephone, geo coordinates, and `openingHoursSpecification` — inject via site-wide head tags for single-location sites. Critical: all JSON-LD in Custom HTML widgets must be in the static HTML response — the audit checks that structured data appears in the raw HTTP response body, not injected via JavaScript loaded after page render.

🗺️

Duda XML sitemap and crawl configuration

Duda automatically generates an XML sitemap at /sitemap.xml for all published sites. The audit checks: sitemap accessibility (the sitemap must be reachable at /sitemap.xml and return a 200 response with valid XML content — verify no robots.txt rule blocks /sitemap.xml); URL coverage (the Duda-generated sitemap includes all published pages that aren\'t set to "Hide from Search Engines" — verify all important pages appear and that pages marked noindex are excluded); `lastmod` population (Duda\'s sitemap includes `lastmod` dates reflecting the last published update date for each page — verify these are correct by comparing to recent page edit dates); sitemap submission to GSC (the sitemap URL should be submitted to Google Search Console under the verified property for the Duda site\'s published domain — Duda\'s GSC integration in Site Settings → SEO → Google Search Console links the property but doesn\'t auto-submit the sitemap; submit it manually in GSC → Sitemaps); `Sitemap:` directive in robots.txt (Duda\'s custom robots.txt editor should include `Sitemap: https://yourdomain.com/sitemap.xml` — this allows any crawler that reads robots.txt to discover the sitemap without requiring a GSC submission); and dynamic/e-commerce pages (if the site uses Duda\'s eCommerce or Store features, product page URLs should be included in the sitemap — check that product pages are crawlable and indexed, not blocked by default eCommerce URL parameters).

Core Web Vitals for Duda sites

Duda is a hosted platform — Duda controls server infrastructure, CDN, and base page delivery performance. The audit uses real CrUX field data (Chrome User Experience Report) for LCP, INP, and CLS, reflecting actual performance for real users on the Duda-hosted site. **LCP** — the most common LCP element on Duda sites is the hero section image or background image. Duda stores images in its own CDN with automatic WebP serving for supported browsers. For hero images: in the Duda editor, upload images at the correct display size (avoid uploading 4000×3000 images when the display size is 1200×600 — Duda will scale them but oversized original files can delay LCP). For above-the-fold background images set in the section\'s style panel, `fetchpriority="high"` is not available via the Duda editor — consider using an `img` element in a Custom HTML widget for the hero image instead of a CSS background image, which allows `fetchpriority` to be set and enables the browser\'s preload scanner. **INP** — Duda sites typically have low INP because they are primarily informational sites with minimal interactive JavaScript. INP issues typically arise from custom third-party scripts injected via Site Settings → General → Add Custom Code (chat widgets, marketing automation, heatmap scripts) — each added script increases main thread blocking time. **CLS** — CLS issues on Duda sites most commonly come from web font loading (FOUT/FOIT) and images without explicit dimensions. Duda\'s image widgets include explicit width/height in the rendered HTML for standard image widgets, but Custom HTML widgets with `img` elements need explicit `width` and `height` attributes to prevent layout shift.

🧠

AI visibility for Duda sites

AI visibility for Duda sites requires both platform configuration and Custom HTML widget use for the schema components. For `llms.txt`: Duda does not provide a direct way to serve a file at a custom URL path. The workaround: create a new page in Duda with the URL slug set to `llms` (producing /llms in the URL). Set the page\'s content as a text block with the llms.txt content, and set a custom HTTP header or use Duda\'s Custom HTML to add `<pre>` formatting. Alternatively, if the site has a connected domain with server access outside Duda (via Cloudflare Workers or similar), serve llms.txt at the CDN layer. For `robots.txt` AI crawler access: in Site Settings → SEO → Robots.txt, verify the custom robots.txt does not include `Disallow:` rules for GPTBot, ClaudeBot, or PerplexityBot user-agents. Duda\'s default robots.txt does not block AI crawlers. For `FAQPage` JSON-LD: add a Custom HTML widget with FAQPage JSON-LD to every service, landing, and blog page with visible FAQ content. The question-heading ratio check (≥20% of H2/H3 headings phrased as questions) can be addressed by using Duda\'s Heading widgets with question-format text for FAQ section headers. For content chunkability (avg section ≤400 words), Duda\'s row/column section structure naturally segments content — ensure each section row addresses a distinct subtopic with concise content rather than one long text block filling an entire section.

HOW IT WORKS

Audit your Duda site in 60 seconds

  1. Enter your published Duda site URL. Use the live published URL (e.g., yourdomain.com or yoursite.dudaone.com) — not the Duda editor preview URL (editor.duda.co/...). No Duda Team account access or admin credentials needed. Works with all Duda plans (Basic, Team, Agency, White Label).
  2. We crawl and analyse. The engine validates Duda's meta tag output across all crawled pages, checks JSON-LD in Custom HTML widgets for schema correctness, reviews the auto-generated sitemap for URL coverage and format, measures CrUX Core Web Vitals from real Chrome field data, and checks all five AI visibility signals.
  3. You get a prioritised report. Duda-specific issues first — missing or generic page title tags (Duda defaults to page names as titles), missing JSON-LD in Custom HTML widgets, sitemap coverage gaps, Core Web Vitals issues tied to hero images and custom script injection — then general SEO, each with the Duda editor path and the fix.

FAQ

Questions about the Duda SEO audit

Does Duda have built-in SEO features?

Yes. Duda (dudaone.com) is an agency-focused website builder with a dedicated SEO section in every site\'s settings. The built-in SEO features include: (1) Title tag and meta description fields per page (in the Pages menu → three-dot menu → SEO Settings for each page). (2) Open Graph tags for social sharing (in Site Settings → SEO → Social Sharing). (3) Robots.txt editing (in Site Settings → SEO → Robots.txt — Duda provides a text editor to customise the robots.txt file). (4) XML sitemap generation (Duda automatically generates a sitemap.xml for each site, accessible at yourdomain.com/sitemap.xml). (5) Canonical URL configuration (default self-referential canonicals on all pages; pagination handling). (6) Redirect management (301, 302, and 307 redirects via Site Settings → SEO → Redirects). (7) noindex per page (via the page\'s SEO Settings checkbox). What Duda does not include natively: structured data / JSON-LD beyond basic WebSite schema (FAQPage, Article, Product, Organization with structured properties require Custom Widget HTML injection), hreflang for multilingual sites (must be manually added via Custom HTML), or direct Google Search Console integration with data display in the Duda dashboard.

How do I add structured data / JSON-LD to a Duda site?

Duda does not have a built-in structured data wizard, but JSON-LD can be added to Duda sites in two ways: (1) **Custom Widget / Custom HTML widget**: In the Duda editor, drag a Custom HTML widget onto the page and insert a `script type="application/ld+json"` block. The widget\'s HTML renders in the page source, making the JSON-LD visible in the initial HTTP response (Googlebot-readable without JavaScript execution). This is the recommended method for page-specific schema (Article, FAQPage, HowTo, BreadcrumbList, Product). For FAQPage: add a Custom HTML widget at the bottom of any page with FAQ content and insert the FAQPage JSON-LD with the questions and answers matching the page\'s visible FAQ section. (2) **Site-wide head injection**: In Site Settings → SEO → Site-wide head tags, add JSON-LD for site-level schema (Organization, WebSite with SearchAction for sitelinks search box). This appears in the `head` of every page. Tip: Duda\'s Custom HTML widgets persist through template changes and re-applies when the page layout is edited, so page-specific JSON-LD needs to be checked after major layout changes to ensure the widget is still present and the JSON-LD is intact. The audit checks that JSON-LD appears in the server-rendered HTML response, not injected client-side after page load.

How does Duda handle multilingual and multi-location SEO for agencies?

Duda has strong multi-site management for agencies managing multiple client sites, but multilingual SEO (hreflang) and multi-location SEO require specific configuration: **Multilingual sites**: Duda\'s multilingual feature (available on Business+ plans) creates language versions of a site, each served under a language path (/es/, /fr/) or subdomain. However, Duda does not automatically generate hreflang tags — these must be manually added via head injection for each language variant. In Site Settings → SEO → Site-wide head tags, add `link rel="alternate" hreflang="es" href="https://yourdomain.com/es/"` for each language. For sites with many language combinations, this manual approach is error-prone — consider whether a platform with native hreflang generation is more appropriate for complex multilingual setups. **Multi-location sites**: Duda\'s Team plan and above allow multiple sites per client. For local SEO across multiple locations, each location should have its own page (or site) with a location-specific LocalBusiness JSON-LD block (inserted via Custom HTML widget) containing the location\'s name, address, phone, and geographic coordinates. The audit checks LocalBusiness schema presence and correctness, hreflang tag format (full absolute URL, language code, bidirectional alternate links), and NAP consistency between visible contact details and schema.

Is the Duda SEO audit free?

Yes. The complete audit is free with no signup and no email gate. Paste your Duda site URL (published site, not the Duda editor preview URL at editor.duda.co) and the audit returns a full SEO report. Paid plans add saved history, scheduled monitoring, larger crawls (up to 1,000 pages), and agency workflows with white-label reporting.