Technical SEO Remediation
Canonical strategy for /products/ versus /collections/products/, robots.txt.liquid rules, parameter handling, pagination, sitemap hygiene and crawl-budget recovery.
Ranking for the way this city's buyers actually search: by width, by last, by material, by whether the thing can be repaired.
Delivered remotely for brands across Portland and Oregon.
The search demand around a Portland catalogue is unusually specific and unusually valuable. People do not search for boots, they search for a wide toe box, a resoleable welt, a particular last, a fill weight for a given temperature, a fabric that will survive a wet commute. Those queries convert far better than the category head term and almost nobody in the category has a page built for them, because the store's collection structure was inherited from the way the warehouse thinks rather than the way the customer asks.
So the collection map gets rebuilt from demand. Sub-collections for width, use case, temperature range, material and repairability, each with real copy, real internal linking and a filter set that matches the promise in the title. Product pages get Product and Offer schema with live price and availability, plus the spec attributes exposed as structured data rather than trapped in an image. Then the technical layer Shopify makes worse by default: the duplicate /collections/*/products/* paths, faceted parameters spawning crawl waste, and thin collection templates.
Answer engines matter more than average in this category, because a person asking which boot can be resoled or how two fill weights compare is asking a question a chat interface is very willing to answer. That means clean extractable comparison content, entity clarity so your brand is understood as a maker of a specific thing in a specific place, spec tables in HTML rather than in a PDF, and content structured so a model can quote it without hallucinating your sizing.
A Portland brand's search competition is not a national average — it is a set of companies designing a few miles away with authority scores you will not match, plus the specialty retailers who also stock you and outrank you for your own product names. That shapes the strategy in two ways. First, the winnable ground is specific rather than broad: the attribute, use-case and comparison queries where a focused maker can genuinely be the best answer, not the head term where a global brand has owned position one for a decade. Second, retailer cannibalisation has to be managed on purpose — your product pages need to be materially richer than the wholesale copy your accounts publish, or the search engine has no reason to prefer you for your own model name. Repair, resole, warranty and refurbished pages are the other local advantage, because they are exactly the content the giants deprioritise and exactly what this region's buyers search before purchase.
The same standard of work we run for every client — applied to a Portland 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 Portland 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.