Ecwid SEO
How SEO works on Ecwid (now Ecwid by Lightspeed) — why the embeddable JavaScript widget behaves so differently from Shopify or BigCommerce, how URL format, static rendering, sitemaps, and hreflang are all scoped to Instant Site / WordPress / Wix, and what a merchant on a custom embed has to fix by hand.
1 evidence signal on this page
- Related live toolGoogle Index Checker
Ecwid (now Ecwid by Lightspeed) is an embeddable ecommerce widget, not a hosted site by default — you drop a JavaScript storefront into an existing WordPress, Wix, Squarespace, or custom page. That one fact drives every SEO nuance: clean URLs, crawlable static HTML, auto sitemaps, and auto robots.txt are all scoped to three integrations (Instant Site, the WordPress plugin, the Wix app). Everywhere else the default is hashbang URLs (/#!/product-name/p/123456), a client-rendered widget with no server-side fallback, and a DIY sitemap. Structured data is automatic but not editable; hreflang between Instant Site language versions is not automatic; free-plan merchants can't edit meta tags at all; and there's no native blog. Google can crawl hashbang URLs today but recommends against them — which is exactly why Ecwid's own Clean Store URLs feature exists.
Evidence for this claim Ecwid documents static storefront pages and specific integration paths for making catalog content available in indexable HTML. Scope: Ecwid storefront integrations; behavior varies by host platform and implementation. Confidence: high · Verified: Ecwid Developers: Static store pages Evidence for this claim Ecwid's clean-URL support on custom sites requires implementation prerequisites documented by Ecwid. Scope: Custom website storefront widget configuration. Confidence: high · Verified: Ecwid Developers: Enable clean store URLsTL;DR — Ecwid (now “Ecwid by Lightspeed”) isn’t a full store platform the way Shopify or BigCommerceBigCommerce SEO is the technical, on-page, and content work you do on a store built on BigCommerce — a hosted SaaS ecommerce platform that ships with more native SEO controls than most of its rivals (editable robots.txt, custom URL structures, auto sitemaps, and automatic 301s), while still leaving faceted navigation, multi-storefront hreflang, and review schema for you to handle. is — it’s a little store widget you drop into a website you already have. Because that widget is built in JavaScript, most of Ecwid’s SEO-friendly features only kick in on three setups: Ecwid’s own Instant Site, the official WordPress plugin, and the official Wix app. On anything else, you’ll have to do more of the SEO work yourself.
What “Ecwid SEO” means
Ecwid is short for “E-commerce widget,” and that name tells you almost everything. Instead of hosting your whole store the way Shopify does, Ecwid gives you a snippet you paste into an existing page — a WordPress blog, a Wix site, a Squarespace page, even a hand-built HTML site — and it draws a full catalog, cart, and checkout right inside that page.
Ecwid also has its own website builder called Instant Site, so you can run Ecwid as your entire website too. That’s the split you have to keep in mind the whole way through: Ecwid can be “just a widget on someone else’s site” or “the whole site.” It behaves very differently for SEO depending on which one you’re doing.
“Ecwid SEOEcwid SEO is the technical, on-page, and content work you do on a store built with Ecwid (now Ecwid by Lightspeed) — an embeddable ecommerce widget that drops into an existing website. Because Ecwid is a JavaScript storefront by default rather than a hosted site, its SEO behavior (URL format, crawlable static HTML, auto sitemap and robots.txt) is scoped to a handful of integrations (Instant Site, the WordPress plugin, and the Wix app) and left to you everywhere else.” is just the normal work of getting your products and category pages foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore., crawled, indexedStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed., and ranked — applied to a store that runs on Ecwid.
The one thing that shapes everything
The store loads with JavaScript. That’s not automatically a problem — Google can read JavaScript — but it means Ecwid has to do extra work to make sure search engines see real, crawlable pages. Ecwid does do that work, but only on three setups:
- Instant Site (Ecwid’s own website builder),
- the official WordPress plugin, and
- the official Wix app.
On those three, Ecwid quietly hands search engines a plain-HTML copy of every product
and category page, gives you clean web addresses, and builds a sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. for you. On any
other setup — a custom HTML site, Squarespace, Weebly, and so on — you get the raw
JavaScript widget with messy #! web addresses, and you have to handle the sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing.
and clean URLs yourself.
What you can and can’t control
A few things surprise people:
- Free plan = no SEO editing. On Ecwid’s free plan you can’t edit your page titlesThe title tag is the HTML title element in a page's head that specifies the document's title. It's the primary source for the SERP title link and a confirmed light ranking factor — but since August 2021 Google doesn't always show it verbatim. or meta descriptionsThe meta description is an HTML head tag — `<meta name=\"description\" content=\"…\">` — that suggests a short summary of the page for the search snippet. It's not a Google ranking factor, and Google rewrites it the majority of the time, but a good one can still lift click-through. at all. You need a paid plan (Venture, Business, or Unlimited) for most on-page controls.
- Image alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search. defaults to the product name, but you can override it. Ecwid writes your image alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search. for you by default, and now lets you set your own custom alt text per image (and even show it as a visible caption under the gallery photo).
- No blog built in. Unlike WordPress, Ecwid has no real blogging tool. If you want to publish articles for SEO, you host a blog somewhere else and link it to your store.
The thing most people get wrong
There are two opposite myths, and both are wrong. One says “Ecwid handles all SEO
automatically, so there’s nothing to do.” That’s only true on Instant Site,
WordPress, or Wix — everywhere else you’re doing real setup by hand. The other says
“Ecwid uses those weird #! links so Google can’t find it at all.” Google can
crawl those links — it’s just not ideal, which is exactly why Ecwid built a “Clean
Store URLs” option to move past them. Turn that option on.
Want the technical version — the exact URL formatsURL structure is how the parts of a web address — scheme, domain, path, query string, and fragment — are organized and formatted. It mostly affects crawling, usability, and how engines understand a page, not rankings directly., how the static-HTML renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. works, the canonical and hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. details, and the product-rename duplicate-URL trap? Switch to the Advanced tab.
Evidence for this claim Ecwid documents static storefront pages and specific integration paths for making catalog content available in indexable HTML. Scope: Ecwid storefront integrations; behavior varies by host platform and implementation. Confidence: high · Verified: Ecwid Developers: Static store pages Evidence for this claim Ecwid's clean-URL support on custom sites requires implementation prerequisites documented by Ecwid. Scope: Custom website storefront widget configuration. Confidence: high · Verified: Ecwid Developers: Enable clean store URLsTL;DR — Ecwid is a JavaScript storefront widget by default, not a hosted site, and that decides everything. Clean URLs, crawlable static HTML, auto sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing., and auto robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere. are scoped to three integrations: Instant Site, the WordPress plugin, and the Wix app. Everywhere else the default is hashbang URLs (
/#!/product-name/p/123456), a client-rendered widget with no SSR fallback unless a developer wires up the Storefront SDK + static-code endpoints, and a DIY sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing.. Canonical and hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. exist as API fields but are only populated where static renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. runs; the no-code multilingual Instant Site feature doesn’t auto-link hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others.. Structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. is automatic but non-editable (JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal.+Microdata on Instant Site/WordPress, Microdata-only elsewhere). Free plan can’t edit meta tagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored.; the embedded widget reportedly can’t do 301s; there’s no native blog.
The frame: widget vs. site decides everything
Most “Ecwid SEOEcwid SEO is the technical, on-page, and content work you do on a store built with Ecwid (now Ecwid by Lightspeed) — an embeddable ecommerce widget that drops into an existing website. Because Ecwid is a JavaScript storefront by default rather than a hosted site, its SEO behavior (URL format, crawlable static HTML, auto sitemap and robots.txt) is scoped to a handful of integrations (Instant Site, the WordPress plugin, and the Wix app) and left to you everywhere else.” content treats Ecwid like Shopify or BigCommerceBigCommerce SEO is the technical, on-page, and content work you do on a store built on BigCommerce — a hosted SaaS ecommerce platform that ships with more native SEO controls than most of its rivals (editable robots.txt, custom URL structures, auto sitemaps, and automatic 301s), while still leaving faceted navigation, multi-storefront hreflang, and review schema for you to handle. — a hosted platform with a fixed set of SEO behaviors. It isn’t. Ecwid (“E-commerce widget,” now Ecwid by Lightspeed after the acquisition) is fundamentally an embeddable JavaScript storefront. You paste a widget into an existing page and it renders the catalog, cart, and checkout client-side. Ecwid also ships its own hosted builder, Instant Site, so it can be the whole website too.
That duality is the organizing idea for the entire article. Ask one question about any Ecwid store before you diagnose anything: is this the Instant Site / WordPress / Wix path, or is it a widget embedded somewhere else? Because nearly every SEO-friendly behavior Ecwid advertises is scoped to the first path and absent on the second. Unlike Shopify or WooCommerceWooCommerce SEO is optimizing a WooCommerce store — which runs as a free plugin on WordPress, not as a standalone platform — to rank in organic search. Because you control the whole stack (templates, URLs, plugins, server), the ceiling is high and the ways to misconfigure it are many., where the platform’s SEO behavior is roughly constant regardless of where it runs, Ecwid’s changes shape depending on the host.
Handled for you (Instant Site + WordPress + Wix): static HTML copies served to crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index., clean URLs, auto sitemap, auto robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere. (Instant Site), full JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal. structured data, canonical tagsA rel=\"canonical\" annotation — in the HTML <head> or an HTTP Link header — that tells search engines which URL is the preferred version of duplicate or near-duplicate content..
Yours to do (custom / other builders): clean-URL setup via server rewrite rules, sitemap generation, static renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. via the Storefront SDK, and awareness that canonical/hreflang tags may simply not be served.
Why Ecwid has an SEO reputation problem
Ecwid has carried a “bad for SEO” reputation for years, and the docs are unusually candid about why. In Ecwid’s own words: “Search engines do not always index dynamic websites well. To ensure they index Ecwid stores, we use special technology. If you sell with Ecwid Instant site or use WordPress or Wix plugin, Ecwid creates a static HTML copy for every product and category page in your store, then gives this copy to a search engine.” (What Ecwid does for SEO)
Read that carefully — the mitigation is scoped to three integrations. Everyone else gets the client-side JS widget with no server-rendered fallback. The developer docs say the same thing from the other direction: “If your website is based on Wix or WordPress site builders, use our official integrations… These integrations have static store pages enabled out of the box. And if you build a storefront on another CMSA content management system (CMS) is software that lets users create, manage, and publish digital content — like blog posts and pages — without writing raw code. WordPress, Drupal, and Joomla are the most common open-source CMS platforms. or a custom website, use our Storefront SDK and Static code endpoints to set up static pages for your website.” (Static store pages)
So the reputation isn’t a relic — it’s still live for anyone embedding the widget into Squarespace, Weebly, Webflow, or a custom page and not building the static layer themselves. The base embed is genuinely client-rendered:
<div id="my-store-1003"></div>
<script type="text/javascript" src="https://app.ecwid.com/script.js?1003" charset="utf-8"></script>
<script type="text/javascript">xProductBrowser("id=my-store-1003");</script>That’s the whole storefront (Dynamic loading for storefront widget). Whether a crawler sees products depends on whether it renders that JavaScript — which is exactly the JavaScript SEOMaking sure search engines can crawl, render, and index content that depends on JavaScript. problem, and why the static-HTML mechanism matters so much.
URL structure — the most nuanced fact here
This is the single most important technical detail, and it’s where Ecwid differs sharply from every hosted rival. Ecwid’s URL format depends entirely on how the store is integrated. From the docs: “Ecwid generates different URL formats based on your website’s setup and the features you have enabled.” (Optimize custom website SEO with better URLs)
| Features enabled | Catalog URL example |
|---|---|
| None (default on a custom site) | https://example.com/store/#!/product-name/p/123456 |
| Clean Store URLs | https://example.com/store/product-name |
| Clean Store URLs + Custom Page Slugs | https://example.com/store/custom-name |
The critical correction to the usual assumption: the hashbang (/#!/) form is the
current default, not a 2014-era relic. On any custom/embedded site that isn’t
Instant Site or the native WordPress/Wix apps, you get hashbang URLs unless you
explicitly enable Clean Store URLs. To turn them on off a custom site, per the docs,
“you must have: Access to its server rewrite rules [and] HTML code of the store
page” — Apache .htaccess, an Nginx server block, or the IIS URL rewrite module
(Enable Clean Store URLs on a custom website).
On Instant Site, WordPress, and Wix, clean URLs are automatic — Ecwid states plainly that on those it provides “SEO-friendly URLs automatically.” Custom URL slugs for products and categories are available too, but only on Instant Site (new version) or WordPress in the UI; merchants on other builders can set slugs only through the REST API (Improving SEO for Ecwid site and store).
Why does the hashbang default matter if Google can crawl it? Because a fragment after
# is never sent to the server by the browser, by design. That creates real friction
around server-log visibility, some crawler/tool compatibility, link-equity
consolidation, and social-share previews. Google’s own position (more on this in the
Google section below) is that it can render #! URLs but recommends against
introducing new ones — which is precisely the justification for enabling Clean Store
URLs rather than shrugging and saying “Google can crawl it.”
Crawlability and rendering — static store pages
This is the technical heart of the platform. On Instant Site, WordPress, and Wix, Ecwid serves a pre-rendered static HTML copy of each product/category page to crawlers, then swaps in the live JS widget for humans. That’s what makes those setups crawl cleanly.
Everywhere else, you build it yourself. The mechanism, per the developer docs, is
manual: fetch pre-rendered HTML from a REST endpoint
(storefront.ecwid.com/product-page/{storeId}/{productId}/static-code, and the
category/home equivalents), inject it into a visible container, then hand off to the
live widget via the Storefront SDK (ec.storefront.staticPages.*,
StaticPageLoader.switchToDynamicMode()) once it loads (Static store pages).
If a developer doesn’t build this, crawlers see only whatever the client-side widget
renders — or fails to render.
The practical inference worth stating plainly: an Ecwid widget dropped into Squarespace, Webflow, Weebly, or a hand-built page is, by default, pure client-side JavaScript with hashbang URLs and no server-rendered fallback. That’s the exact scenario the “Ecwid is bad for SEO” reputation is about, and it’s still true today for most non-WordPress/non-Wix/non-Instant-Site embeds.
This is most important for custom embeds outside Instant Site, WordPress, and Wix. The comparison shows initial HTML versus a browser render; it does not prove what any engine has indexed.
Test a product and category route with my free Render Gap Analyzer Free
- Test both a product URL and a category URL on the live host integration.
- Check whether critical content, links, canonical, and metadata exist in the initial document.
- If the widget supplies them only after rendering, implement Ecwid’s static-page path or move to a supported integration, then retest.
The initial HTML contains about eight words while the rendered page contains about 112. The finding says most content is added by JavaScript and recommends server-side rendering or static generation.
Sitemap and robots.txt
Auto-generation here is also integration-scoped. Ecwid: “Ecwid automatically generates a sitemap.xml file… New pages – and new products – are indexed faster with sitemaps… You still need to submit a sitemap to Google manually” — availability listed as Venture, Business, Unlimited (What Ecwid does for SEO). On Instant Site the sitemap is even submitted internally via robots.txt, though you can still submit it in Search ConsoleGoogle's free tool for monitoring crawling, indexing, and search performance. to speed discovery (Submitting a sitemap to Google).
But the same article is explicit about the DIY path: “If you are using Ecwid with your own website, you can generate a sitemap for your store pages by using a third-party service.” For WordPress v5.5+, the plugin auto-generates a store sitemap; older versions need Yoast or Google XML SitemapsAn XML sitemap is a UTF-8 file listing the canonical URLs on your site (with optional lastmod) so search engines can discover and prioritize them. It's a discovery and diagnostic aid, not a guarantee of indexing — and Google ignores its priority and changefreq tags.. And the Wix caveat matters — Wix’s own sitemap covers site pages “and not the store pages with your products, categories, etc.” So a Wix + Ecwid store’s product pages are not in Wix’s sitemap; you rely on Ecwid’s static-rendering path to get them discovered.
Robots.txt is similarly scoped. Ecwid controls a robots.txt only on Instant Site, where product and category pages are indexable but the cart and search-results pages are excluded (they’re per-visitor). On any embed into an existing site, robots.txt belongs to the host CMS or hosting account — Ecwid has no robots.txt to manage there at all. This is unlike WooCommerce (where WordPress owns robots.txt) or BigCommerce (editable in-admin) — with Ecwid, who owns robots.txt depends on where the widget lives.
Canonical tags and duplicate content
Ecwid’s static-page REST response includes a canonicalUrl field — “Canonical URL
for this page” — returned alongside htmlCode, metaDescriptionHtml, ogTagsHtml,
jsonLDHtml, and hrefLangHtml (Static code for product page).
So canonical tags are handled automatically wherever Ecwid’s static rendering runs
(Instant Site, WordPress, Wix). On a custom integration that only embeds the JS widget
with no static/SSR layer, there may be no canonical tag served to crawlers — the
page is a single client-rendered URL with no per-product HTML actually delivered.
The nastier duplicate-content risk is renaming. Ecwid generates a product URL from the title, so if you change a product’s title, a new URL is created and the old one isn’t automatically redirected — the old URL keeps working, giving you two live URLs for one product. On Instant Site, Ecwid has since shipped manual 301 redirectA 301 redirect is the HTTP status code for a permanent move: it tells browsers and search engines a URL has moved for good, and it's the strongest signal for consolidating a page's ranking signals onto the new URL. Google says permanent redirects don't cause a loss in PageRank. setup, so this is now avoidable if you proactively add a redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't.. On the embedded widget version, though, practitioners report you can’t create redirects at all — Style Factory’s review notes that on the widget you “can’t create redirects,” which “is not ideal at all because if you change a URL, a redirect is necessary” (Style Factory). The takeaway: plan your URLs before you publish, and set up the 301 before renaming where the tooling allows it. The canonicalizationHow search engines pick one canonical URL among duplicates and consolidate signals onto it. cluster covers the underlying mechanics.
Structured data
Ecwid auto-generates schema.org markup on all integrations, which is a genuine strength — but with two catches. In Ecwid’s words: “Ecwid uses Schema.org vocabulary to annotate product information and adds structured data to all store pages automatically. For Ecwid Instant Site and stores on WordPress sites, structured data is generated using JSON-LD and Microdata markup. For all the other websites, only the Microdata format is used. As of now, it’s impossible to edit or remove the structured data.” (What Ecwid does for SEO)
Two actionable points: (1) it’s not editable at all — no schema customization, no adding FAQ or Video markup through Ecwid; (2) the format differs by integration — full JSON-LD+Microdata only on Instant Site/WordPress, Microdata-only everywhere else. Microdata is the older, more error-prone format; Google still reads it but recommends JSON-LD. So the myth that “a widget can’t do rich resultsRich results (formerly 'rich snippets') are enhanced search listings — stars, images, prices, breadcrumbs, video thumbnails, and more — that Google and Bing build from structured data. They're a display feature, not a ranking factor, and eligibility never guarantees they'll show.” is false — Ecwid does structured data everywhere — but the quality of that markup is better on the native integrations, and you can’t touch it either way.
Meta tags, alt text, and plan gating
On-page controls are gated behind paid plans. Custom titles, meta descriptionsThe meta description is an HTML head tag — `<meta name=\"description\" content=\"…\">` — that suggests a short summary of the page for the search snippet. It's not a Google ranking factor, and Google rewrites it the majority of the time, but a good one can still lift click-through., and slugs require Venture, Business, or Unlimited — free-plan merchants can’t edit meta tags at all. Call this out early with any client on the free tier; it’s a hard limiter, not a best-practice nicety.
Image alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search. defaults to the product name, but it’s no longer locked. Ecwid now lets you set a custom alt text (up to 125 characters) per product image and per variation image from Catalog → Products → image → Actions → Edit alt text — and there’s no plan gating mentioned for this, unlike meta tagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored.. You can even flip a toggle (Website → Edit Site → Product → Product Details → Image gallery, on Instant Site; the equivalent setting on other integrations) to display the custom alt text as a visible caption under each gallery photo, which is useful for apparel sizing/fit details. (Alt texts and visible product image descriptions) This is a real improvement worth knowing about if you last checked Ecwid a while ago — several third-party reviews (Style Factory among them) still describe alt text as unchangeable, and that’s now outdated. For most product images “product name as alt text” is a fine default, but if you need descriptive or accessibility-improving alt text — which matters for image SEOImage SEO is optimizing the images on your pages so search engines can discover, crawl, index, and rank them — in Google Images and visual search, and as part of standard web results. It spans file format, filenames, alt text, compression, responsive markup, structured data, and image sitemaps. and screen-reader users — you can now write it yourself.
Multilingual and international SEO
Ecwid’s no-code multilingual feature (Instant Site) is not classic hreflang internationalization. Each language gets its own subpath, and Ecwid’s help doc treats each as a self-contained mini-site you must SEO separately: “each translated version of your site has its own subdomain [subpath] with a language code… Search engines consider each… as unique and distinct from your main site. You need to optimize each version to make it high ranked.” (Creating a multilingual site)
Nothing there mentions automatic hreflang linking between the versions. At the API
level, hreflang is supported — the static-code endpoint takes an internationalPages
parameter and returns an hrefLangHtml field (Static code for product page) —
but that’s developer-facing. The gap worth flagging: a merchant using the no-code
multilingual Instant Site feature likely gets zero automatic hreflang tags between
language versions, which is exactly the “wrong locale ranks for the wrong query”
problem generic hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. guidance warns
about. If international matters, either have a developer call the API’s
internationalPages param or add the hreflang annotations yourself.
What Ecwid doesn’t do
- No native blog. Style Factory: “There’s no built-in blogging engine. For content marketing or SEO blogging, you’ll need to host your blog separately (on WordPress, for example) and link to it.” Instant Site’s blog “workaround” is odd — it “involves a really odd workaround where product categories are used to create posts.” If content is a channel for you, run a real blog elsewhere. (This is a place where WooCommerce, sitting on top of WordPress, has a structural advantage.)
- Limited redirect tooling on non-Instant-Site embeds — covered above; the widget version reportedly can’t do redirects at all.
- No editable structured data — covered above. (Image alt text, unlike structured data, is now editable per image — see the meta tags section above.)
Ecwid vs. the other platforms
Where Ecwid is weaker than the hosted rivals: it’s the only one whose core SEO behavior flips based on where it’s embedded; it has no native blog (WooCommerce wins here by living on WordPress); redirects are absent on the widget version (Shopify, BigCommerce, Magento, and PrestaShop all handle this better); and free-tier SEO is locked. Where it’s adequate: structured data ships automatically everywhere, HTTPSHTTPS is the encrypted version of HTTP — it uses TLS to authenticate the server and protect data in transit between a browser and a website. Google announced it as a lightweight ranking signal in 2014 and today conditionally prefers HTTPS pages as canonical; Chrome marks plain HTTP pages 'Not Secure.' and mobile rendering are fine, and on Instant Site/WordPress/Wix the static-rendering path genuinely solves the JavaScript-crawlabilityCrawlability is how well search engine crawlers can discover, access, and fetch a site's pages. A crawlability issue is any technical condition — blocked access, broken links, server failures, or bloated URL inventory — that stops pages from reaching the index. problem.
The honest positioning: Ecwid is excellent at what it’s for — adding a store to a site you already have, cheaply, without a rebuild. If that site is WordPress or Wix, or if you use Instant Site, your SEO baseline is solid. If you’re embedding the widget into a custom site or another builder and treating SEO as important, you either commit to the developer work (static pages, clean URLs, DIY sitemap, hreflang) or you should be looking at a platform built for it — Shopify, BigCommerce, WooCommerce, Magento, or PrestaShop — instead.
AI summary
A condensed take on the Advanced version:
- Ecwid (now Ecwid by Lightspeed) is an embeddable JavaScript widget, not a hosted site by default. You paste a storefront into an existing WordPress, Wix, Squarespace, or custom page. Its own builder, Instant Site, can run the whole site. This widget-vs-site split drives every SEO fact.
- SEO-friendly behavior is scoped to three integrations: Instant Site, the WordPress plugin, and the Wix app get static HTML served to crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index., clean URLs, an auto sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing., and (Instant Site) auto robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere.. Everywhere else you’re on your own.
- URL default is the hashbang form
/#!/product-name/p/123456on custom embeds — this is current, not legacy. Clean Store URLs are automatic on Instant Site/WordPress/Wix but require server rewrite rules (.htaccess/nginx/IIS) elsewhere. - Static renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. (“static store pages”) is out-of-the-box only on the three native integrations; on a custom site a developer must wire up the Storefront SDK + static-code REST endpoints, or crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. see only the client-rendered widget.
- SitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. and robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere. auto-generation is Instant-Site (and modern WordPress) only; custom sites DIY the sitemap; Wix’s own sitemap excludes Ecwid product pages.
- Canonical + hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. exist as API fields (
canonicalUrl,hrefLangHtml) but are only populated where static renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. runs. The no-code multilingual Instant Site feature does not auto-link hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. between language versions. - Structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. is automatic but non-editable — full JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal.+Microdata on Instant Site/WordPress, Microdata-only elsewhere.
- Renaming a product creates a new URL with no auto-redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't.; Instant Site now has manual 301s, but the embedded widget reportedly can’t do redirects at all.
- Free plan can’t edit meta tagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored.; there’s no native blog. Image alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search. defaults to the product name but can now be overridden per image (no plan gating), unlike meta tagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored.. Google can crawl hashbang URLs but recommends against them — hence Clean Store URLs. If SEO matters on a custom embed, do the developer work or use a platform built for it (Shopify, BigCommerce, WooCommerce, Magento, PrestaShop).
Official documentation
Primary-source docs from Ecwid/Lightspeed and Google.
Ecwid / Lightspeed
- What Ecwid does for SEO — the overview: static copies, clean URLs, sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing., robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere., structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding., automatic ALT tagsAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search..
- Alt texts and visible product image descriptions — how to override the default product-name alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search. per image.
- Improving SEO for Ecwid site and store — meta tagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored., custom URL slugs, 301 redirectsA 301 redirect is the HTTP status code for a permanent move: it tells browsers and search engines a URL has moved for good, and it's the strongest signal for consolidating a page's ranking signals onto the new URL. Google says permanent redirects don't cause a loss in PageRank., sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. submission, SSL (and the plan gating).
- Submitting a sitemap to Google — Instant Site vs. own-website sitemap handling, WordPress and Wix specifics.
- Creating a multilingual site with Ecwid Instant Site — the subpath-per-language model and its SEO implications.
- What Lightspeed eCom does for SEO — the Lightspeed-branded mirror confirming “Lightspeed eCom” = Ecwid.
Ecwid developer docs
- Static store pages — the scoping of “out of the box” static renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. and the Storefront SDK swap mechanism.
- Static code for product page — the
canonicalUrl,hrefLangHtml, andinternationalPagesfields. - Optimize custom website SEO with better URLs — the three-tier URL comparison table.
- Enable Clean Store URLs on a custom website — the server rewrite-rule requirements.
- Dynamic loading for storefront widget — the base embed code.
- Deprecating our AJAX crawling scheme — Google’s 2015 statement that it renders
#!URLs but recommends against introducing new hashbang/escaped-fragment URLs. - Structured data intro — why Google recommends JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal. over Microdata.
Quotes from the source
On-the-record statements from Ecwid/Lightspeed, Google, and the practitioners whose Ecwid-specific findings shaped this guide. Where a page supports a deep link, I link to the quoted passage.
Google — hashbang / AJAX crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. (deep-link verified)
- “In short: We are no longer recommending the AJAX crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. proposal we made back in
2009.” — Google Search Central Blog, Oct 14, 2015. Google renders
#!URLs today but recommends against introducing new ones. Jump to quote
Ecwid developer docs — URL structureURL structure is how the parts of a web address — scheme, domain, path, query string, and fragment — are organized and formatted. It mostly affects crawling, usability, and how engines understand a page, not rankings directly. & static pages (deep-link verified)
- “When you add an Ecwid store to a custom website, it creates dynamic pages for the catalog” — the setup that produces hashbang URLs by default. Jump to quote
- “To enable Clean Store URLs on a custom website, you must have:” access to server rewrite rules and the store page’s HTML — i.e., clean URLs aren’t free off a native integration. Jump to quote
- “If your website is based on Wix or WordPress site builders, use our official integrations” — the scoping statement for out-of-the-box static renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM.. Jump to quote
Ecwid support docs — SEO overview (relayed; the support.ecwid.com host blocks
automated fetching, so these are verified via rendered page, not a fetch-checked
#:~:text= fragment — confirm against the live page before treating as final)
- “Search engines do not always indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. dynamic websites well. To ensure they index Ecwid stores, we use special technology.” — What Ecwid does for SEO, “Static copies of pages.”
- “Ecwid uses Schema.orgSchema markup is code that uses the schema.org vocabulary to label what your content means so search engines can understand it and show rich results. It's most often written in JSON-LD, and it's not a direct ranking factor. vocabulary to annotate product information and adds structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. to all store pages automatically… For all the other websites, only the Microdata format is used. As of now, it’s impossible to edit or remove the structured data.” — same article, “Structured data.”
- “Ecwid automatically generates a sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing..xml file… You still need to submit a sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. to Google manually.” — same article, “Sitemap for Instant Sites.”
Practitioners — Ecwid-specific findings (relayed from Style Factory; confirm at source)
- “you can’t create redirectsA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. in the widget (embedded) version of Ecwid either, which is not ideal at all because if you change a URL, a redirect is necessary to tell Google where the new page lives.” Source
- “Changing alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search. (the description of images that search engines and screen readers see) isn’t possible, though — you’re stuck with whatever Ecwid generates for you automatically.” Source — superseded: Ecwid’s own help center now documents custom per-image alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search. (up to 125 characters, no plan gating), so this finding no longer holds. See Alt texts and visible product image descriptions.
- “There’s no built-in blogging engine. For content marketing or SEO blogging, you’ll need to host your blog separately (on WordPress, for example) and link to it.” Source
support.ecwid.com (Zendesk-hosted) returns HTTP 403An HTTP 403 client-error status code meaning the server understood the request but refuses to fulfill it — access is denied, whether or not credentials are involved. For SEO, a 403 served to Googlebot on a page meant to be public and indexable usually points to a misconfigured rule; a persistent 403 keeps a page out of the index either way. to automated fetch
tools, so the Ecwid support-doc quotes above were verified via a rendered browser
session rather than a fetch-checked deep link — sanity-check them against the live page
before relying on the exact wording. The Google and docs.ecwid.com quotes are
deep-link fetch-verified. Ecwid SEO checklist
Prioritized by impact. The first question decides half the list: which integration is this?
First, identify the setup
- Confirm whether this store runs on Instant Site, the WordPress plugin, the Wix app, or a custom/other embed — every item below branches on it.
High impact
- Clean Store URLs are on. Automatic on Instant Site/WordPress/Wix; on a custom
site, add the server rewrite rules (.htaccess / nginx / IIS) plus the JS flag —
don’t leave hashbang
/#!/URLs in place. - CrawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. get real HTML. On a custom/other-builder embed, wire up the Storefront SDK + static-code endpoints (or move to a native integration) so pages aren’t pure client-side JS.
- SitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. exists and is submitted. Instant Site/modern WordPress auto-generate it; custom sites need a third-party generator. Submit it in Google Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. and Bing Webmaster ToolsMicrosoft's free portal for monitoring and improving how a site appears in Bing search — the peer to Google Search Console, plus IndexNow instant indexing, richer backlink data, and keyword volumes. Because Bing's index also feeds Microsoft Copilot, it doubles as a window into AI-search visibility.. On Wix, remember Wix’s own sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. excludes Ecwid product pages.
- Plan for 301s before renaming. Set up the Instant Site redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. before you change a product title; on the embedded widget, avoid renames since you can’t redirect the old URL.
Standard setup
- Paid plan (Venture/Business/Unlimited) if you need to edit titles/meta descriptions at all — the free plan can’t.
- Page titlesThe title tag is the HTML title element in a page's head that specifies the document's title. It's the primary source for the SERP title link and a confirmed light ranking factor — but since August 2021 Google doesn't always show it verbatim. and meta descriptionsThe meta description is an HTML head tag — `<meta name=\"description\" content=\"…\">` — that suggests a short summary of the page for the search snippet. It's not a Google ranking factor, and Google rewrites it the majority of the time, but a good one can still lift click-through. written for the home page, top products, and top categories.
- Structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. verified with Google’s Rich ResultsRich results (formerly 'rich snippets') are enhanced search listings — stars, images, prices, breadcrumbs, video thumbnails, and more — that Google and Bing build from structured data. They're a display feature, not a ranking factor, and eligibility never guarantees they'll show. Test (it’s auto-generated and non-editable — confirm it’s valid, especially the Microdata-only path on custom embeds).
- Canonical tagsA rel=\"canonical\" annotation — in the HTML <head> or an HTTP Link header — that tells search engines which URL is the preferred version of duplicate or near-duplicate content. confirmed present on product/category pages (auto on native integrations; may be absent on a bare widget embed).
- A real blog set up elsewhere (e.g., WordPress) if content is a channel — Ecwid has no native blog.
International (multilingual only)
- hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. actually present between language versions — the no-code Instant Site
multilingual feature does not add it automatically; use the API’s
internationalPagesparam or add annotations yourself. - Each language version optimized independently (titles/descriptions translated), since Ecwid treats each as a distinct site.
The storefront ownership framework
Every Ecwid audit starts by assigning ownership for four outputs:
- Host page: the surrounding Wix, WordPress, custom, or Instant Site route.
- Store route: the clean product/category URL Ecwid exposes to crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index..
- Search signals: canonical, metadata, structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding., and internal linksAn internal link is a hyperlink from one page on a website to another page on the same website. Internal links help search engines discover your pages and pass ranking signals (PageRank and anchor-text context) between them..
- Discovery files: which system publishes the sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. and robots rules.
When the host and store both claim the same responsibility, duplicates and conflicting signals appear. When neither claims it, product URLs disappear from sitemapsA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. or ship without required markup. Document one owner for every output before changing settings.
Ecwid SEO cheat sheet
What’s automatic — by integration
| Behavior | Instant Site | WordPress plugin | Wix app | Custom / other embed |
|---|---|---|---|---|
| Clean URLs | Auto | Auto | Auto | Manual (rewrite rules) |
| Static HTML for crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. | Auto | Auto | Auto | DIY (Storefront SDK) |
| SitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. | Auto | Auto (v5.5+) | DIY* | DIY (3rd-party) |
| robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere. | Ecwid-controlled | Host (WordPress) | Host (Wix) | Host CMSA content management system (CMS) is software that lets users create, manage, and publish digital content — like blog posts and pages — without writing raw code. WordPress, Drupal, and Joomla are the most common open-source CMS platforms. |
| Structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. | JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal. + Microdata | JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal. + Microdata | Microdata only | Microdata only |
| 301 redirectsA 301 redirect is the HTTP status code for a permanent move: it tells browsers and search engines a URL has moved for good, and it's the strongest signal for consolidating a page's ranking signals onto the new URL. Google says permanent redirects don't cause a loss in PageRank. | Manual (available) | Host-dependent | Host-dependent | Reportedly none |
URL formatsURL structure is how the parts of a web address — scheme, domain, path, query string, and fragment — are organized and formatted. It mostly affects crawling, usability, and how engines understand a page, not rankings directly.
| Setup | Example |
|---|---|
| Default (custom site) | https://example.com/store/#!/product-name/p/123456 |
| Clean Store URLs | https://example.com/store/product-name |
| Clean + custom slug | https://example.com/store/custom-name |
Plan gating (on-page SEO)
- Free plan: can’t edit titles/meta descriptionsThe meta description is an HTML head tag — `<meta name=\"description\" content=\"…\">` — that suggests a short summary of the page for the search snippet. It's not a Google ranking factor, and Google rewrites it the majority of the time, but a good one can still lift click-through..
- Venture / Business / Unlimited: custom titles, descriptions, slugs, sitemap.
API fields that matter (static-code endpoint)
canonicalUrl— canonical tagA rel=\"canonical\" annotation — in the HTML <head> or an HTTP Link header — that tells search engines which URL is the preferred version of duplicate or near-duplicate content.hrefLangHtml— hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. tags (needsinternationalPagesparam)jsonLDHtml/metaDescriptionHtml/ogTagsHtml— the rest of the head
Don’ts
- Don’t leave hashbang
/#!/URLs on a custom embed — turn on Clean Store URLs. - Don’t rename products on the embedded widget (no redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. = duplicate/orphan URL).
- Don’t assume Wix’s sitemap includes your Ecwid products (it doesn’t).
- Don’t assume the no-code multilingual feature adds hreflang (it doesn’t).
- Don’t expect to edit structured data (you can’t) — but do set custom alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search. if the defaults aren’t good enough; that one’s editable per image now.
Compare Ecwid URL variants
Export suspected product/category variants to urls.txt, then capture their status
and canonical target:
while IFS= read -r url; do
html=$(mktemp)
status=$(curl -sSL -o "$html" -w '%{http_code}' "$url")
canonical=$(grep -Eio '<link[^>]+rel=["'"']canonical["'"'][^>]*>' "$html" | head -1)
printf '%s\t%s\t%s\n' "$status" "$url" "$canonical"
rm -f "$html"
done < urls.txtGroup the output by product. Each public variant should either consolidate consistently or have a distinct purpose; do not infer the preferred URL from status code alone.
Patrick's relevant free tools
- SEO Incident Simulator — Practice thirty deterministic technical SEO incident investigations — indexability, crawl controls, redirects, sitemaps, markup, caching, DNS, bot verification, rendering, hreflang, and faceted navigation — with clearly labeled fixture evidence and Find → Fix → Verify handoffs.
- Raw vs. Rendered HTML Checker — See what's in your page's initial HTML versus after JavaScript runs — headless-Chrome rendering only when the page actually needs it, a rendering-strategy verdict (SSR / prerendered / CSR / hybrid), ~15 calibrated JavaScript-SEO checks (noindex, canonicals, robots.txt blocking, links, soft 404s), a side-by-side raw-vs-rendered diff, and shareable reports.
- hreflang Generator + Linter — Enter your URL × locale matrix and get bidirectional hreflang markup as head tags, sitemap XML (auto-split past 50,000 URLs), and Link headers — linted live for wrong region codes, duplicates, and missing fallbacks. Runs entirely in your browser.
Tools for Ecwid SEO
- Google Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. — submit your sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing., use URL InspectionA Google Search Console feature that reports how Google sees one specific URL on a property you own. By default it shows the last-indexed snapshot; a separate \"Test live URL\" mode fetches the current version. to confirm Google actually renders your product pages (critical on any JS-widget embed), and watch Page IndexingThe Google Search Console report (formerly Index Coverage) showing how many of your URLs are indexed vs. not indexed, and grouping the not-indexed ones by reason. for hashbang or duplicate-URL problems.
- Bing Webmaster ToolsMicrosoft's free portal for monitoring and improving how a site appears in Bing search — the peer to Google Search Console, plus IndexNow instant indexing, richer backlink data, and keyword volumes. Because Bing's index also feeds Microsoft Copilot, it doubles as a window into AI-search visibility. — second sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. submission and crawl visibility.
- Google Rich ResultsRich results (formerly 'rich snippets') are enhanced search listings — stars, images, prices, breadcrumbs, video thumbnails, and more — that Google and Bing build from structured data. They're a display feature, not a ranking factor, and eligibility never guarantees they'll show. Test / Schema MarkupSchema markup is code that uses the schema.org vocabulary to label what your content means so search engines can understand it and show rich results. It's most often written in JSON-LD, and it's not a direct ranking factor. Validator — confirm Ecwid’s auto-generated structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. is valid; it’s non-editable, so validation is your only lever, and the Microdata-only path on custom embeds is more error-prone.
- URL Inspection (GSC) “View crawled page” — the fastest way to see whether a crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. gets real HTML or an empty JS shell on a custom/other-builder embed.
- Screaming Frog / Ahrefs Site Audit (JS-renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. mode on) — crawl the store to catch hashbang URLs, duplicate URLs from renames, missing canonicals, and pages that render blank without JavaScript.
- XML sitemapAn XML sitemap is a UTF-8 file listing the canonical URLs on your site (with optional lastmod) so search engines can discover and prioritize them. It's a discovery and diagnostic aid, not a guarantee of indexing — and Google ignores its priority and changefreq tags. generators (XML-Sitemaps, My Sitemap Generator, or Yoast/Google XML Sitemaps on WordPress) — for the DIY sitemap Ecwid won’t build on a custom site.
- Server rewrite tooling —
.htaccess(Apache), the Nginx config, or the IIS URL Rewrite module — to enable Clean Store URLs on a custom site.
Resources worth your time
On-site, related
- JavaScript SEOMaking sure search engines can crawl, render, and index content that depends on JavaScript. — the renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. problem behind Ecwid’s client-side widget; this is the cluster that explains why static store pages matter.
- CanonicalizationHow search engines pick one canonical URL among duplicates and consolidate signals onto it. — the mechanics behind Ecwid’s
canonicalUrlfield and the product-rename duplicate-URL trap. - hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. — what the no-code multilingual Instant Site feature doesn’t add for you.
Ecwid / Lightspeed official
- What Ecwid does for SEO and Improving SEO for Ecwid site and store — the two core help articles.
- Static store pages — the developer path for crawlable HTML on custom sites.
From around the industry
- Ecwid Review — Key Pros and Cons, Pricing and Alternatives (Style Factory) — the source for the no-redirectsA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't.-on-widget and no-native-blog findings (its locked-alt-text finding is now outdated — see the alt-text article below).
- Alt texts and visible product image descriptions — how to set custom per-image alt textAlt text is the value of the `alt` attribute on an HTML `<img>` element — a short text substitute chosen for the image's purpose and context, not a literal description of what it shows. It makes images accessible to screen-reader users and helps search engines understand images, mainly for image search. and show it as a visible gallery caption.
- Ecwid Review (ecommerce-platforms.com) — practitioner coverage of the product-rename duplicate-URL risk.
- Ecwid Review 2026 (Tooltester) — independent review framing Ecwid’s SEO as its weaker area versus native platforms.
- Ecwid by Lightspeed Ecommerce Shopping Cart — WordPress.org plugin page — the official plugin (20,000+ active installations), the path that gets static renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. and clean URLs on WordPress.
- New Clean URLs for Every Ecwid Store (Ecwid blog) — Ecwid’s own history of why hashbang URLs were a problem and why Clean Store URLs exist.
Mistakes people actually make on Ecwid
Every one of these traces back to the same root cause: treating Ecwid like a normal hosted platform instead of checking which integration it’s running on.
Embedding the widget on a custom site and never turning on Clean Store URLs
Why it’s wrong: the default on any non-native embed is the hashbang form
(/#!/product-name/p/123456). The fragment after # never reaches the server, which
creates friction for link-equity consolidation, server-log visibility, and some
crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index./tool compatibility — the exact reason Ecwid built Clean Store URLs in the
first place. What to do instead: check the URL formatURL structure is how the parts of a web address — scheme, domain, path, query string, and fragment — are organized and formatted. It mostly affects crawling, usability, and how engines understand a page, not rankings directly. on day one. If you see
/#!/ in a product link, get server access and enable Clean Store URLs
(.htaccess/nginx/IIS) rather than assuming “Google can crawl it, so it’s fine.”
Dropping the base embed code into Squarespace/Webflow/Weebly and calling it done
Why it’s wrong: that base embed is pure client-side JavaScript with no
server-rendered fallback unless a developer wires up the Storefront SDK and
static-code endpoints. CrawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. see only whatever the widget renders — or fails to
render. This is the specific scenario the “Ecwid is bad for SEO” reputation is about.
What to do instead: either commission the static-pages build (Storefront SDK +
static-code endpoints) or move the store to Instant Site, the WordPress plugin, or
the Wix app, where static renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. ships automatically.
Renaming a product title without setting up a redirect first
Why it’s wrong: Ecwid generates the product URL from the title, so a rename creates a brand-new URL while the old one keeps working — two live URLs for one product, with no automatic redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't.. What to do instead: decide on a product’s title and URL before you publish it. If you must rename on Instant Site, add the manual 301 before you save the new title; on the embedded widget, avoid renaming published products at all, since redirects reportedly aren’t available there.
Assuming Wix’s sitemap covers your Ecwid products
Why it’s wrong: Wix’s own sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. covers site pages, not the store pages Ecwid generates — product and category pages simply aren’t in it. What to do instead: don’t audit sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. coverage from the Wix side. Confirm product-page discoveryURL discovery is how search engines find URLs to crawl — by pull (following links and reading sitemaps) and by push (you notify them via IndexNow, the Indexing API, or WebSub). It's the find step that comes before a page is ever fetched. through Ecwid’s own static-renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. path and Google Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results.’s coverage report instead.
Assuming the free plan lets you edit titles or descriptions
Why it’s wrong: on Ecwid’s free plan, meta-tag editing is switched off entirely — it’s not a missing setting, it’s a plan limitation. Time spent hunting for the field is wasted. What to do instead: confirm the plan (Venture, Business, or Unlimited) before promising a client on-page titleThe title tag is the HTML title element in a page's head that specifies the document's title. It's the primary source for the SERP title link and a confirmed light ranking factor — but since August 2021 Google doesn't always show it verbatim./description work.
Assuming the no-code multilingual Instant Site feature adds hreflang for you
Why it’s wrong: each translated version gets its own subpath, but Ecwid’s own docs
frame each as a separate site you must optimize on its own — nothing in that no-code
flow auto-links hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. between versions. Skipping this invites the classic
wrong-locale-ranks-for-the-wrong-query problem. What to do instead: if
international matters, have a developer populate the static-code endpoint’s
internationalPages parameter, or add the hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. annotations by hand.
Common Ecwid SEO issues
Symptom-first lookup for problems that actually show up on Ecwid stores, grouped by what you’d notice first.
Product pages stuck on “Discovered — currently not indexed” in GSC
Cause: the store is embedded on a custom site or another builder without the Storefront SDK static-pages layer, so Google is trying to render a client-side JS widget with no server-rendered fallback and not always succeeding. Fix: open Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results.’s URL Inspection toolA Google Search Console feature that reports how Google sees one specific URL on a property you own. By default it shows the last-indexed snapshot; a separate \"Test live URL\" mode fetches the current version. and use “View crawled page” to see what Google actually received. If it’s a near-empty shell, the fix is building the static-code integration (or moving to Instant Site/WordPress/Wix) — not tweaking meta tagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored..
Two live URLs showing up for the same product
Cause: the product was renamed, which generates a new URL from the new title without redirecting the old one. Fix: check whether the old URL still resolves (it usually does with a 200). On Instant Site, add the manual 301 from the old URL to the new one. On the embedded widget where redirectsA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. reportedly aren’t available, revert the title to stop the duplication, or accept the split and prevent future renames.
Hashbang URLs showing up in Google’s index instead of clean URLs
Cause: Clean Store URLs was enabled after the hashbang version was already
indexedStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed., and the old /#!/ URLs were never redirected or canonicalized to the new
clean paths. Fix: confirm both URL forms resolve, add redirects or a canonical tagA rel=\"canonical\" annotation — in the HTML <head> or an HTTP Link header — that tells search engines which URL is the preferred version of duplicate or near-duplicate content.
from the hashbang version to the clean one, and resubmit the sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. in Search
Console. Recheck indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. status after a few weeks with the Google Index
Checker.
Rich Results Test shows no structured data, or flags it as invalid
Cause: on a custom/other-builder embed, Ecwid serves Microdata only (not JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal.), which is the older, more error-prone format — or the widget simply didn’t finish renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. when the test crawled it. Fix: run the page through Google’s Rich ResultsRich results (formerly 'rich snippets') are enhanced search listings — stars, images, prices, breadcrumbs, video thumbnails, and more — that Google and Bing build from structured data. They're a display feature, not a ranking factor, and eligibility never guarantees they'll show. Test or the Schema Validator directly. You can’t edit Ecwid’s auto-generated markup, so if it’s genuinely broken the realistic fix is moving to a native integration (Instant Site/WordPress/Wix) where JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal. + Microdata both ship.
Product/category pages missing from the sitemap on a Wix store
Cause: Wix’s own sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. only covers site pages, not the store pages Ecwid generates — this is expected behavior, not a bug. Fix: stop looking at Wix’s sitemap for product coverage. Confirm those pages are being discovered through Ecwid’s static-renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. path via Search ConsoleGoogle's free tool for monitoring crawling, indexing, and search performance.’s coverage report instead of via sitemap inclusion.
Meta title/description fields won’t save
Cause: the store is on Ecwid’s free plan, which blocks on-page SEO field editing entirely. Fix: check the plan tier in the Ecwid admin. Editing titles and descriptions requires Venture, Business, or Unlimited — there’s no workaround on free.
Which Ecwid SEO path applies to this store?
Ecwid’s SEO behavior isn’t constant — it branches almost entirely on how the store is integrated. Answer this first before diagnosing anything else.
How is Ecwid integrated on this site, and what does that mean for SEO?
AI prompts for Ecwid SEO work
Copy-paste prompts for the specific diagnostic and drafting tasks this article covers. Paste in the input described, and check the AI’s output against the article before acting on it — these prompts help you organize what you already know, they don’t replace verifying it yourself.
1. Diagnose which URL formatURL structure is how the parts of a web address — scheme, domain, path, query string, and fragment — are organized and formatted. It mostly affects crawling, usability, and how engines understand a page, not rankings directly. a product page is actually using
I'm checking an Ecwid product page's URL for SEO. Here's the URL:
[paste the product page URL]
Tell me: is this the default hashbang format (contains /#!/), the Clean Store URLs
format, or a custom-slug format? If it's the hashbang format, explain in plain
language what that means for how a browser and a search engine treat everything
after the # symbol.2. Check a static-code API response for canonical and hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. fields
Here's the JSON response from Ecwid's static-code endpoint for one of my product
pages:
[paste the raw JSON response]
Tell me whether the canonicalUrl field is populated and what it points to, whether
hrefLangHtml is present and non-empty, and list any of these fields that appear
empty or missing: canonicalUrl, hrefLangHtml, jsonLDHtml, metaDescriptionHtml,
ogTagsHtml.3. Spot renamed products creating duplicate URLs
Here's a CSV export of my Ecwid product titles and their current URLs:
[paste the CSV, or a list of "title, url" pairs]
Cross-reference this against my old product export if I have one, or just flag any
product whose URL doesn't match what its current title would generate (Ecwid builds
URLs from titles). List each mismatch as a likely renamed product that may have an
orphaned old URL still live.4. Draft plan-gated meta titles and descriptions for a batch of products
I'm on an Ecwid paid plan and can edit meta titles and descriptions. Here's a list of
products with their name, category, and one key selling point:
[paste a list: "product name | category | selling point"]
Write a meta title (under 60 characters) and meta description (under 155 characters)
for each product, written for a shopper who's already searching for this kind of
product by name. Test yourself: Ecwid SEO
Five quick questions on how SEO works on Ecwid. Pick an answer for each, then check.
Ecwid SEO
Ecwid SEO is the technical, on-page, and content work you do on a store built with Ecwid (now Ecwid by Lightspeed) — an embeddable ecommerce widget that drops into an existing website. Because Ecwid is a JavaScript storefront by default rather than a hosted site, its SEO behavior (URL format, crawlable static HTML, auto sitemap and robots.txt) is scoped to a handful of integrations (Instant Site, the WordPress plugin, and the Wix app) and left to you everywhere else.
Related: JavaScript SEO, Canonicalization, Hreflang
Ecwid SEO
Ecwid (the name comes from “E-commerce widget”) is a cloud ecommerce platform now owned by Lightspeed. Unlike Shopify or BigCommerceBigCommerce SEO is the technical, on-page, and content work you do on a store built on BigCommerce — a hosted SaaS ecommerce platform that ships with more native SEO controls than most of its rivals (editable robots.txt, custom URL structures, auto sitemaps, and automatic 301s), while still leaving faceted navigation, multi-storefront hreflang, and review schema for you to handle., which host your whole store, Ecwid is best known for being embeddable: you drop a JavaScript widget or an official plugin into an existing site — WordPress, Wix, Squarespace, a custom HTML page, Facebook, Instagram — and it renders a full catalog, cart, and checkout inside that page. Ecwid also offers its own hosted site builder, Instant Site, so a merchant can run Ecwid either as a widget bolted onto someone else’s site or as the entire site itself. That duality — “just a widget” versus “a full site” — drives every other SEO fact about the platform.
Because the base storefront is client-rendered JavaScript, Ecwid’s SEO-friendly behaviors are integration-scoped. On Instant Site, the WordPress plugin, and the Wix app, Ecwid serves a static HTML copy of each product and category page to crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index., generates clean URLs, and auto-produces a sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. and (on Instant Site) robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere.. On a custom website or another builder, the default is the hashbang URL formatURL structure is how the parts of a web address — scheme, domain, path, query string, and fragment — are organized and formatted. It mostly affects crawling, usability, and how engines understand a page, not rankings directly. (/#!/product-name/p/123456), no auto sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing., and no static renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. unless a developer wires up Ecwid’s Storefront SDK and static-code REST endpoints. Structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. is automatic everywhere but not editable (JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal. plus Microdata on Instant Site/WordPress, Microdata-only elsewhere).
What Ecwid does not do for you: give free-plan merchants any control over meta tagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored. or titles, redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. old product URLs after a rename on the embedded widget version, auto-generate hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. between Instant Site language versions, or provide a native blog. Those are the hands-on parts of Ecwid SEO — the same JavaScript-renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM., duplicate-content, and international-signaling problems every platform has, expressed through a widget that behaves very differently depending on where you embed it.
Related: JavaScript SEO, Canonicalization, Hreflang
Build-time retrieval analysis plus live signals for this exact article. The automatic chunk report includes a deterministic readiness score and is ready without a model download.
Search Console
sampleGA4 traffic (28d)
sampleCloudflare traffic (7d)
sampledCrUX field data (28d, phone)
sampleGoogle NLP entities
localChangelog
Updated Jul 19, 2026.
Editorial summary and recorded change details.Summary
Corrected an outdated claim that Ecwid's image alt text is automatic and locked; Ecwid now lets merchants set custom per-image alt text (and show it as a visible gallery caption).
Change details
- Before
Image alt text is automatic and locked. Ecwid generates alt text from the product title, and there's no manual override.AfterImage alt text is no longer locked — Ecwid's help center now documents custom per-image alt text (up to 125 characters, no plan gating) and an option to display it as a visible gallery caption. Corrected across the beginner and advanced lenses, the ai-summary, the 'What Ecwid doesn't do' list, the quotes lens (flagged the superseded Style Factory finding), and the resources/official-docs lists.
Full comparison unavailable — no prior snapshot was archived for this revision.