A country row overrides individual SEO fields of one page for shoppers in one country browsing in one language, for example Italian in Switzerland, without changing what Italian shoppers elsewhere see. Country rows exist for every page with page-level SEO: the home, shop and search pages of each storefront, the four catalog list pages and the blog index.
Resolution per field: the country row's value → the value for the language (its translation, or the source value in the default language) → the generated default for that language. Robots: the country row's setting when it is not null → the page setting → the automatic rule. Social image: the country row → the page's image → the share image for that language and country → the store logo. A title on a country row is final, like any saved title.
Writes are patches with the same reset rules as source updates: null, an empty string or *_is_default: true stops overriding a field so the page uses the language value again. Unlike translations, a country row can set social_image_id, robots_index and robots_follow. locale may be the store's default language. The country must be served by a market (STOREFRONT_COUNTRY_NOT_SERVED) and the language must be served in that country (STOREFRONT_LANGUAGE_NOT_SERVED). Reads of a country without a row return every field as default. Delete the row to return the whole page to the language values. Country rows change metadata only; canonical URLs and hreflang alternates still follow the country and language address.
Pages |
Endpoints |
Scopes |
Webhook events |
|---|---|---|---|
Home, shop and search (Home, Shop and Search page SEO) |
|
|
None |
Brand, vendor, category and collection list pages (List-page SEO) |
|
|
|
Blog index (Blog List SEO) |
|
|
|
Assigning a non-empty social_image_id on a country row also requires read_site_assets and a site-asset image of this store. To change the title pattern or share image, rather than one page's values, for a language or country, use SEO overrides.