Technical SEO Remediation
Canonical strategy for /products/ versus /collections/products/, robots.txt.liquid rules, parameter handling, pagination, sitemap hygiene and crawl-budget recovery.
French-language search architecture for Shopify catalogues, plus the EU locales you are already shipping to and not ranking in.
Delivered remotely for brands across Paris and France.
French commercial search does not translate from an English keyword list, and the gap is not vocabulary. It is how buyers name things. French shoppers search by material, by cut, by usage and by a category noun that often has no clean English equivalent, and the phrases carry accents that your URL structure, your internal links and your collection handles all have to agree about. A collection map built by translating an English one produces pages that read correctly and match nothing anyone types.
Shopify's own defaults then work against you in a multi-locale store. Products remain reachable at two URL patterns. Filter and sort parameters generate near-identical crawlable pages, and in a French catalogue with size, matière and colour facets the multiplication is severe. Locale subfolders inherit canonical tags and internal links that point at the wrong language. And a French store selling into Belgium, Switzerland and the rest of the EU usually has fr-FR and fr-BE fighting over the same content with no hreflang to arbitrate it. Fixing that is unglamorous and it is where the sessions are.
The competitive picture matters too. In most Paris categories the top of the results is occupied by marketplaces, department-store sites and a handful of large retailers with domain authority you are not going to outrank on a product page alone. What you can win is the specific: an appellation, a leather, a fragrance family, a silhouette, a maker. Collection landing pages and buying guides built on those terms outperform a generic category page, and they are also what gets quoted when someone asks an assistant in French which brand to buy from.
Almost every Paris brand we work with is selling to more French speakers than the ones in France, and almost none of them have told a search engine which page is for whom. Belgium, Switzerland, Luxembourg and Canada all read the same language and none of them share your prices, your delivery options, your currency in the Swiss case or your tax treatment. Left alone, Shopify Markets will happily serve near-duplicate French pages across those locales and let them cannibalise each other. We set the locale structure deliberately, implement hreflang across fr-FR, fr-BE and the English international market, keep the currency and delivery information correct per market so the product schema does not contradict the page, and then report performance per market rather than as one national total that hides a market losing ground. On top of that sits the GEO work: entity clarity about who the brand is, where it makes what it makes, and what it actually sells, expressed in structured data and extractable French copy, because a growing share of category research now ends in a chat window rather than a results page and the citation goes to whoever wrote the clearest answer.
The same standard of work we run for every client — applied to a Paris brand’s realities.
Full service detailCanonical strategy for /products/ versus /collections/products/, robots.txt.liquid rules, parameter handling, pagination, sitemap hygiene and crawl-budget recovery.
A collection map built from real search demand, including sub-collections for attributes buyers search on: size, material, use case, price band, occasion.
Titles, descriptions, image alts, Product and Offer schema with live price and availability, plus review markup that stays valid as inventory changes.
Buying guides, comparisons and category explainers targeting mid-funnel demand, each linked into the collections they support. No filler blogging.
Entity and schema work, clean extractable answers, llms.txt and citation-worthy content so ChatGPT, Perplexity and AI Overviews reference your store.
Targeted outreach for editorial links to collection and guide pages from publications your buyers actually read. No directories, no link farms.
We do not work off a rate card. Every Paris engagement starts with a fixed statement of work — named deliverables, named dates, one number — written after we have looked at your store, not before. If a smaller first step would serve you better, we will say so.
Get this scopedA full crawl plus log-file analysis to find what Googlebot actually sees and where crawl budget is being spent. Findings ranked by revenue impact.
Keyword research mapped to your catalogue and margin, not to search volume alone. High-volume terms you cannot profitably serve get cut.
Technical remediation ships first. There is no point building content on a site that wastes half its crawl budget on filter URLs.
Collection landing pages and commercial content shipped on a fixed monthly cadence, each with internal links planned before it goes live.
Monthly reporting on non-branded organic revenue, index coverage and AI citations. Branded queries are excluded from every growth number we show you.
Anonymised under NDA. Figures pulled from the client’s own analytics.
8-figure DTC brand, ~140 SKUs, US + CA · Shopify Plus (migrated from Magento 2)
Magento 2 cost $9k a month in hosting, extensions and emergency dev before a single feature shipped. Mobile LCP sat at 5.4 seconds and mobile converted at less than half the desktop rate across 68% of sessions. The named constraint: 11,412 indexed URLs and a top-3 organic position on their hero category, so a migration that lost rankings would cost more than the platform ever saved.
~$7M/yr, 480 SKUs, US + EU via Shopify Markets · Shopify Plus (Shopify Markets, 3 regions)
Paid social carried 81% of revenue and CAC had climbed 44% in eighteen months. Organic sat at 2,100 sessions a month against category competitors doing ten times that, and the EU storefront duplicated the US catalogue with no hreflang at all. The named constraint: three national retailers own the head terms with link profiles this brand could not match in a year, so the plan had to win on query depth instead of authority.
“Honestly I signed for the SEO and the AI-search piece was a footnote in the proposal I skimmed. Then in March our product pages started getting quoted in ChatGPT answers for insulated growler queries, and that traffic showed up in GA4 with real purchase intent attached to it. Organic revenue is up 58% year over year and roughly a fifth of that comes from surfaces that didn't exist when we signed the contract. I still don't fully understand it. I've stopped questioning it.”
Thirty minutes with the strategist who would actually run your account. We screen-share your store, read your data live, and tell you the three highest-value things we can see from the outside.
Prefer to write it out? [email protected] gets a real reply the same business day, Mon-Fri, 9am-6pm MT.