Teknisk SEO-sjekkliste for nettbutikker
Teknisk SEO for Shopify og WooCommerce: noindex, robots.txt, sitemap, titler, H1, kanoniske URL-er, strukturerte produktdata, Open Graph og alt-tekst.
FixReports-redaksjonen12 min lesing
En teknisk SEO-sjekkliste for en nettbutikk bekrefter tre ting: at søkemotorer kan gjennomsøke og indeksere sidene du vil bli funnet på, at de forstår hva hver side er, og at de kan vise den godt i søkeresultatene. I praksis betyr det ingen bortglemte noindex-regler, en robots.txt som ikke blokkerer viktige sider, et sitemap med kanoniske URL-er, en unik tittel og metabeskrivelse per side, én tydelig H1, kanoniske tagger som samler duplikater fra varianter og kolleksjoner, gyldige strukturerte data av typen Product, Open Graph-tagger, beskrivende alt-tekst og ingen brutte interne lenker. Disse kontrollene fjerner tekniske hindringer, men de garanterer ikke rangeringer eller trafikk.
Hovedpunkter
- robots.txt styrer gjennomsøking, ikke indeksering. For å holde en side utenfor Google bruker du
noindex, og du må ikke blokkere siden i robots.txt, for da ser Google aldri regelen (Google Search Central (åpnes i en ny fane)). - Én sitemap-fil kan inneholde opptil 50 000 URL-er eller 50 MB ukomprimert, og Google ignorerer
<priority>og<changefreq>(Google Search Central (åpnes i en ny fane)). - Google sier at det ikke finnes noe ideelt antall overskrifter, men én H1 som navngir produktet, er den tydeligste hovedtittelen for kunder og skjermlesere.
- Selgeroppføringer (merchant listings) krever produktnavn, bilde og et nestet
Offer(ikkeAggregateOffer) med en pris over null og en valuta (Google Search Central (åpnes i en ny fane)).
Hva håndterer Shopify og WooCommerce som standard?
Shopify håndterer det meste av det grunnleggende innen teknisk SEO i plattformen og temaet, mens en WooCommerce-butikk er avhengig av WordPress-kjernen og en SEO-utvidelse for flere av punktene.
| Punkt | Shopify | WooCommerce (WordPress) |
|---|---|---|
| XML-sitemap | /sitemap.xml, automatisk | /wp-sitemap.xml siden WordPress 5.5, eller sitemapet fra en SEO-utvidelse |
| robots.txt | Automatisk; redigeres med robots.txt.liquid | Virtuell fil fra WordPress som viser til kjernens sitemap |
| Kanoniske tagger | Legges til automatisk | Kjernen legger dem bare til på enkeltsider |
| Metabeskrivelse | Felt i søkemotoroppføringen for hvert produkt | SEO-utvidelse eller tema |
| Strukturerte data for produkter | Temaet, via filteret structured_data | JSON-LD fra WooCommerce-kjernen på produktsider |
| Open Graph-tagger | Temaet (Dawn: meta-tags.liquid) | SEO-utvidelse eller tema |
| Handlekurv og kasse | Blokkert (Disallow) i robots.txt | Merket noindex av WooCommerce |
Detaljer og kilder for hver rad følger nedenfor (per oktober 2026).
Hvordan sikrer du at butikksidene kan indekseres?
En side kan indekseres når den returnerer statuskode 200, ikke er blokkert av robots.txt og ikke har noen noindex-regel.
En noindex-regel kan ligge i en metatagg eller i en HTTP-header, og Google støtter den ikke i robots.txt (Google (åpnes i en ny fane)):
<meta name="robots" content="noindex">
X-Robots-Tag: noindex
robots.txt styrer trafikken fra søkeroboter. En blokkert URL kan likevel vises i resultatene, uten beskrivelse, hvis andre sider lenker til den (Google (åpnes i en ny fane)). Rapporten Sideindeksering (åpnes i en ny fane) (Page indexing) i Search Console viser hver URL som ikke er indeksert, sammen med en årsak som «URL marked 'noindex'». Ikke alle URL-er trenger å bli indeksert, men produktene og kolleksjonene dine gjør det.
Shopify
Standardfilen robots.txt blokkerer stiene for administrasjon, handlekurv, kasse, konto og bestillinger, i tillegg til filtrerte (/collections/*+*) og sorterte (sort_by) kolleksjons-URL-er som dupliserer kolleksjonssider. Du kan redigere den med en robots.txt.liquid-mal, men Shopify kaller dette en tilpasning uten støtte og advarer om at feil kan koste en butikk all trafikken (Shopify Help Center (åpnes i en ny fane)).
For å skjule en side, et blogginnlegg eller et produkt setter du heltallsmetafeltet seo.hidden til 1. Det skjuler elementet fra sitemaps, søkemotorer og søket i butikken. Produktstatusen Unlisted (ikke oppført) skjuler i tillegg produkter fra kolleksjoner og anbefalinger (Shopify Help Center (åpnes i en ny fane)). Så lenge en butikk er passordbeskyttet, kan søkemotorer ikke lese sitemapet.
WooCommerce
Sjekk Innstillinger > Lesing > Synlighet for søkemotorer (Settings > Reading > Search engine visibility). Når «Be søkemotorer om å ikke indeksere dette nettstedet» (Discourage search engines from indexing this site) er krysset av, legger WordPress (siden 5.3) til en robots-metatagg med noindex, nofollow på sidene dine (WordPress.org (åpnes i en ny fane)) og slår av kjernens sitemap. Hvis butikken ble bygget i et testmiljø (staging), må du kontrollere at avkrysningen ble fjernet ved lansering. WooCommerce merker selv sidene for handlekurv, kasse og Min konto med noindex og sender X-Robots-Tag: noindex på endepunkter som ordrebekreftelsen (order received) (WooCommerce-kildekoden (åpnes i en ny fane)). Det er som forventet.
Hva bør XML-sitemapet til en nettbutikk inneholde?
Sitemapet bør bare liste opp kanoniske, indekserbare URL-er du vil ha med i søk: produkter, kolleksjoner eller kategorier, innholdssider og blogginnlegg.
Googles regler: opptil 50 000 URL-er eller 50 MB per fil, en sitemap-indeks for større mengder, absolutte URL-er, bare URL-er du vil vise i resultatene, og <lastmod> bare når den er korrekt (Google (åpnes i en ny fane)). Send inn sitemapet i rapporten Nettstedskart (Sitemaps) i Search Console, eller vis til det i robots.txt:
Sitemap: https://example.com/sitemap.xml
I Shopify har hvert domene en automatisk sitemap.xml som lenker til underordnede sitemaps for produkter, kolleksjoner, blogger og sider, og som oppdateres når du legger til nytt innhold. Hvert internasjonale domene får sitt eget (Shopify Help Center (åpnes i en ny fane)).
I WooCommerce leverer WordPress 5.5 og nyere en sitemap-indeks i kjernen på /wp-sitemap.xml. Den er oppført i robots.txt fra WordPress og har som standard opptil 2000 oppføringer per sitemap. SEO-utvidelser som Yoast SEO erstatter den med sin egen (Make WordPress Core (åpnes i en ny fane)). Sjekk hvilket sitemap som faktisk er i bruk, før du sender det inn.
Hvordan bør du skrive produkttitler og metabeskrivelser?
Gi hver side en unik, beskrivende tittel og en metabeskrivelse som oppsummerer den, med de viktigste ordene først, fordi Google forkorter begge for å få dem til å passe på skjermen.
Googles råd om titler: Gjør titlene beskrivende og konsise, unngå søkeordfylling og gjentatt standardtekst, og plasser navnet på nettstedet i starten eller slutten med et skilletegn. Det finnes ingen lengdegrense, men tittellenker forkortes etter skjermbredden (Google (åpnes i en ny fane)). Google kan også lage tittellenken av annen tekst, for eksempel H1-en eller og:title.
Til tekstutdrag bruker Google stort sett innholdet på siden, og metabeskrivelsen når den beskriver siden mer presist. Google foreslår å ta med produktfakta som pris eller produsent, og sier at genererte beskrivelser er greit så lenge de er lesbare og varierte (Google (åpnes i en ny fane)).
<title>Linen shirt, natural, relaxed fit | Example Store</title>
<meta name="description" content="Relaxed-fit shirt in European linen. Sizes XS to XXL, $68, free returns within 30 days.">
- Shopify: Rediger Sidetittel (Page title), Metabeskrivelse (Meta description) og URL-håndtak (URL handle) i delen for søkemotoroppføring på hvert produkt (Shopify Help Center (åpnes i en ny fane)). Shopify godtar opptil 70 tegn i tittelen, foreslår rundt 60 og anbefaler 160 tegn for beskrivelsen (Shopify Help Center (åpnes i en ny fane)).
- WooCommerce: WordPress-kjernen skriver ikke ut noen metabeskrivelse (kontrollert i kildekoden for 7.1.3), så bruk en SEO-utvidelse eller temaet ditt.
Trenger hver side nøyaktig én H1?
Google krever ikke et bestemt antall, men én H1 som navngir siden, er den tydeligste hovedtittelen for kunder, skjermlesere og søkemotorer.
Googles startveiledning for SEO sier at det ikke finnes noe ideelt antall overskrifter, og at rekkefølgen på overskriftene ikke betyr noe for Google Søk, selv om en semantisk rekkefølge hjelper skjermlesere (Google (åpnes i en ny fane)). Veiledningen for tittellenker foreslår å gjøre hovedtittelen til den mest fremtredende teksten, for eksempel som den første synlige <h1>. Opplæringsmateriellet fra W3C legger til at overskrifter formidler hvordan siden er organisert, og at du bør unngå å hoppe over nivåer (W3C WAI (åpnes i en ny fane)).
Vanlige feil i nettbutikker: logoen i en H1 på hver side, produktnavnet i en <div> eller H2, en ekstra H1 fra en app og kolleksjonssider uten H1.
Hvordan håndterer kanoniske URL-er duplikater fra varianter og kolleksjoner?
En kanonisk tagg forteller Google hvilken av flere URL-er med samme innhold som skal indekseres. URL-er med variantparametere og kolleksjonsstier bør derfor peke til én foretrukket produkt-URL.
Google behandler omdirigeringer og rel="canonical" som sterke signaler og det at en URL står i sitemapet, som et svakt signal. Bruk absolutte URL-er, og ikke bruk robots.txt eller noindex for å velge en kanonisk URL (Google (åpnes i en ny fane)). For varianter som styres av en valgfri spørreparameter som ?color=green, foreslår Google URL-en uten parameteren som kanonisk. Google ignorerer #-fragmenter, så varianter trenger stier eller parametere. Google anbefaler også selvrefererende kanoniske tagger på indekserbare sider og konsekvente URL-er i lenker, sitemaps og kanoniske tagger (Google (åpnes i en ny fane)).
<link rel="canonical" href="https://example.com/products/linen-shirt">
Hvis Google ignorerer valget ditt, viser rapporten for sideindeksering «Duplicate, Google chose different canonical than user» (duplikat, Google valgte en annen kanonisk URL enn brukeren). Det tyder som regel på motstridende signaler.
- Shopify: Kanoniske tagger genereres automatisk (Shopify Help Center (åpnes i en ny fane)), og Dawn-temaet skriver ut
<link rel="canonical" href="{{ canonical_url }}">. Temaer som bruker filteretwithin, lager produkt-URL-er som inneholder kolleksjonen (/collections/summer/products/linen-shirt), og Shopify påpeker at disse dupliserer den vanlige produktsiden (Shopify (åpnes i en ny fane)). Sjekk at den kanoniske taggen på disse peker til/products/linen-shirt. - WooCommerce: WordPress-kjernen skriver bare ut en kanonisk tagg på enkeltvisninger som produkter og sider (WordPress-utviklerreferansen (åpnes i en ny fane)), så butikk- og kategoriarkiver er avhengige av SEO-utvidelsen eller temaet ditt. Endrer du permalenkestrukturen for produkter, endres alle produkt-URL-er, og gamle lenker gir 404-feil med mindre du legger inn omdirigeringer (WooCommerce (åpnes i en ny fane)).
Hvordan setter du opp strukturerte data av typen Product for selgeroppføringer?
Legg til Product-oppmerking med et nestet Offer som samsvarer med prisen og tilgjengeligheten på siden, og test den deretter i Googles Rich Results Test (test av utvidede resultater).
Google bruker produktutdrag (product snippets) for produktsider der folk ikke kan kjøpe direkte, og selgeroppføringer for sider der de kan det (Google (åpnes i en ny fane)). Google anbefaler generelt JSON-LD (Google (åpnes i en ny fane)). Selgeroppføringer krever name, image og offers som et Offer, med price over null og priceCurrency i ISO 4217-format. Anbefalte egenskaper er blant annet availability, gtin, brand, aggregateRating, shippingDetails og hasMerchantReturnPolicy (Google (åpnes i en ny fane)). For varianter støtter Google ProductGroup med hasVariant, variesBy og productGroupID (Google (åpnes i en ny fane)).
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Linen shirt, natural",
"image": ["https://example.com/images/linen-shirt-1x1.jpg"],
"sku": "LS-NAT-M",
"brand": { "@type": "Brand", "name": "Example Store" },
"offers": {
"@type": "Offer",
"url": "https://example.com/products/linen-shirt",
"price": "68.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
}
}
</script>
Merk bare opp det kundene faktisk kan se. Google garanterer ikke at strukturerte data vises i resultatene (Google (åpnes i en ny fane)).
- Shopify:
{{ product | structured_data }}gir etProductfor produkter uten varianter og enProductGroupfor produkter med varianter (Shopify (åpnes i en ny fane)). Dawn tar det med i produktseksjonen. Hvis en app for anmeldelser eller SEO legger til sin egen oppmerking, må du se etter duplikater. - WooCommerce: Kjernen skriver ut Product JSON-LD på produktsider, med SKU, tilbud, vurderinger når det finnes anmeldelser, og en GTIN når feltet for GTIN, UPC, EAN eller ISBN (lagt til i WooCommerce 9.2 (åpnes i en ny fane)) er fylt ut. Variable produkter med ulike priser per variant får et prisintervall som
AggregateOffer, med mindre URL-en velger én bestemt variant (WooCommerce-kildekoden (åpnes i en ny fane)). Test dem derfor, siden selgeroppføringer krever etOffer.
For returer godtar Google også en returpolicy på organisasjonsnivå i oppmerkingen, men innstillinger i Merchant Center eller Search Console går foran (Google (åpnes i en ny fane)).
Hvilke Open Graph-tagger bør produktsider ha?
Produktsider bør ha og:title, og:type, og:image og og:url, pluss og:description og og:image:alt, slik at delte lenker viser riktig tittel og bilde.
Open Graph-protokollen oppgir disse fire som påkrevde, definerer og:url som den kanoniske URL-en og sier at og:image:alt bør følge med hvert og:image (ogp.me (åpnes i en ny fane)).
<meta property="og:type" content="product">
<meta property="og:title" content="Linen shirt, natural">
<meta property="og:url" content="https://example.com/products/linen-shirt">
<meta property="og:image" content="https://example.com/images/linen-shirt-1200x630.jpg">
<meta property="og:image:alt" content="Natural linen shirt on a hanger">
<meta property="og:description" content="Relaxed-fit shirt in European linen.">
- Shopify:
snippets/meta-tags.liquidi Dawn skriver ut disse fra sidetittelen, den kanoniske URL-en og produktbildet (Shopify Dawn på GitHub (åpnes i en ny fane)). Angi et reservebilde under Nettbutikk > Preferanser (Online Store > Preferences) (Shopify Help Center (åpnes i en ny fane)). - WooCommerce: Verken WordPress-kjernen (7.1.3) eller WooCommerce (11.2.1) skriver ut Open Graph-tagger, så legg dem til med en SEO-utvidelse eller i temaet.
Hvorfor er alt-tekst viktig for produktbilder?
Alt-tekst forteller søkemotorer og skjermleserbrukere hva et produktbilde viser, og Google bruker den sammen med maskinsyn og innholdet på siden.
Googles veiledning for bilder ber om nyttig og konkret alt-tekst uten søkeordfylling. Det beste eksempelet er «Dalmatian puppy playing fetch» (en dalmatinervalp som leker apport). Google indekserer ikke CSS-bakgrunnsbilder, så produktbilder hører hjemme i <img>-elementer (Google (åpnes i en ny fane)). For en nettbutikk betyr det alt-tekst som «Naturfarget linskjorte, sett bakfra», ikke «skjorte skjorte lin kjøp».
- Shopify: Åpne produktet, klikk på bildet, velg Rediger alt-tekst (Edit alt text) og deretter Lagre alt-tekst (Save alt text) (Shopify Help Center (åpnes i en ny fane)).
- WooCommerce: Fyll inn Alternativ tekst (Alt Text) i vedleggsdetaljene for hvert bilde i mediebiblioteket (WordPress.org (åpnes i en ny fane)).
Hvordan finner og retter du brutte interne lenker?
Gjennomsøk butikken din, lag en liste over interne lenker som gir en 4xx-feil, og oppdater hver lenke eller lag en 301-omdirigering fra den gamle URL-en til den nærmeste aktive siden.
Google gjennomsøker lenker som er bygget som <a>-elementer med href, og anbefaler at hver viktig side har en lenke fra minst én annen side (Google (åpnes i en ny fane)). URL-er som returnerer 4xx-koder, blir ikke indeksert, og URL-er som allerede er indeksert, blir fjernet. En 301 er et sterkt omdirigeringssignal, en 302 et svakt (Google (åpnes i en ny fane)). Lenker i nettbutikker brytes når produkter slettes eller får nytt navn, håndtak endres eller kolleksjoner legges ned, mens de gamle lenkene blir liggende i menyer, beskrivelser og blogginnlegg.
- Shopify: Gå til Innhold > Menyer > Vis URL-omdirigeringer > Opprett URL-omdirigering (Content > Menus > View URL redirects > Create URL redirect). Shopify omdirigerer bare URL-er som faktisk er brutte (Shopify Help Center (åpnes i en ny fane)).
- WooCommerce: Legg inn serverregler eller bruk en utvidelse for omdirigering hver gang du endrer slugs eller permalenkeinnstillinger.
En gratis skanning avdekker mange av disse problemene på omtrent ett minutt. Vår SEO-rapport sjekker titler, metabeskrivelser, H1-er, kanoniske tagger, noindex, robots.txt, sitemapet, strukturerte data av typen Product, Open Graph, alt-tekst og brutte interne lenker på opptil 25 sider, med løsninger for plattformen din.
Ofte stilte spørsmål
Garanterer teknisk SEO bedre rangeringer?
Nei. Disse rettelsene fjerner årsaker til at en side ikke kan gjennomsøkes, indekseres eller forstås. Rangeringer avhenger fortsatt av relevans og mange andre faktorer.
Bør hver produktvariant ha sin egen indekserte URL?
Det kommer an på hvordan variantene er bygget. Hvis de deler én side og bare skiller seg ved en valgfri spørreparameter, foreslår Google URL-en uten parameteren som kanonisk. Hvis hver variant har sin egen side, behandler Googles veiledning for varianter hver side for seg.
Hvorfor vises ikke produktet mitt med utvidede resultater selv om oppmerkingen er gyldig?
Google garanterer ikke utvidede resultater for gyldige strukturerte data. Sjekk at oppmerkingen samsvarer med det synlige innholdet, bruker et Offer med en pris over null og består Rich Results Test.
Bør jeg blokkere filtrerte kolleksjonssider i robots.txt?
I Shopify blokkerer standardfilen robots.txt allerede filtrerte og sorterte kolleksjons-URL-er, fordi de dupliserer kolleksjonssider. Hvis du redigerer robots.txt.liquid, bør du beholde disse reglene med mindre du har en konkret grunn til å endre dem.
Kilder
- Block search indexing with noindex (åpnes i en ny fane), Google Search Central, oppdatert 10. desember 2025
- Introduction to robots.txt (åpnes i en ny fane), Google Search Central, oppdatert 10. desember 2025
- Build and submit a sitemap (åpnes i en ny fane), Google Search Central, oppdatert 8. juli 2026
- Page indexing report (åpnes i en ny fane), Search Console-hjelp (Google), hentet 22. oktober 2026
- Influencing your title links (åpnes i en ny fane), Google Search Central, oppdatert 10. desember 2025
- Control your snippets in search results (åpnes i en ny fane), Google Search Central, oppdatert 20. april 2026
- SEO starter guide (åpnes i en ny fane), Google Search Central, oppdatert 10. desember 2025
- How to specify a canonical URL (åpnes i en ny fane), Google Search Central, oppdatert 10. juli 2026
- Designing a URL structure for ecommerce sites (åpnes i en ny fane), Google Search Central, oppdatert 10. desember 2025
- Product structured data (åpnes i en ny fane), Google Search Central, oppdatert 10. desember 2025
- Merchant listing structured data (åpnes i en ny fane), Google Search Central, oppdatert 8. september 2026
- Product variant structured data (åpnes i en ny fane), Google Search Central, oppdatert 8. september 2026
- Merchant return policy structured data (åpnes i en ny fane), Google Search Central, oppdatert 8. september 2026
- General structured data guidelines (åpnes i en ny fane), Google Search Central, oppdatert 10. juli 2026
- Introduction to structured data markup (åpnes i en ny fane), Google Search Central, oppdatert 10. desember 2025
- Image SEO best practices (åpnes i en ny fane), Google Search Central, oppdatert 2. mars 2026
- Make your links crawlable (åpnes i en ny fane), Google Search Central, oppdatert 10. desember 2025
- How HTTP status codes and network errors affect Google Search (åpnes i en ny fane), Google Search Central, oppdatert 4. februar 2026
- Headings (åpnes i en ny fane), W3C Web Accessibility Initiative, oppdatert 4. mai 2017
- The Open Graph protocol (åpnes i en ny fane), ogp.me, hentet 22. oktober 2026
- Editing robots.txt.liquid (åpnes i en ny fane), Shopify Help Center, hentet 22. oktober 2026
- Hide a page from search engines (åpnes i en ny fane), Shopify Help Center, hentet 22. oktober 2026
- Finding and submitting your sitemap (åpnes i en ny fane), Shopify Help Center, hentet 22. oktober 2026
- SEO overview (åpnes i en ny fane), Shopify Help Center, hentet 22. oktober 2026
- Adding keywords to your store (åpnes i en ny fane), Shopify Help Center, hentet 22. oktober 2026
- Adding and updating products (åpnes i en ny fane), Shopify Help Center, hentet 22. oktober 2026
- URL redirects (åpnes i en ny fane), Shopify Help Center, hentet 22. oktober 2026
- Online store preferences (åpnes i en ny fane), Shopify Help Center, hentet 22. oktober 2026
- Liquid filters: structured_data (åpnes i en ny fane), Shopify, hentet 22. oktober 2026
- Liquid filters: within (åpnes i en ny fane), Shopify, hentet 22. oktober 2026
- Dawn theme: snippets/meta-tags.liquid (åpnes i en ny fane), Shopify på GitHub, hentet 22. oktober 2026
- Settings Reading screen (åpnes i en ny fane), WordPress.org-dokumentasjon, oppdatert 8. juni 2024
- Media Library screen (åpnes i en ny fane), WordPress.org-dokumentasjon, oppdatert 6. juni 2024
- New XML sitemaps functionality in WordPress 5.5 (åpnes i en ny fane), Make WordPress Core, 22. juli 2020
- rel_canonical() (åpnes i en ny fane), WordPress-utviklerreferansen, hentet 22. oktober 2026
- Permalinks (åpnes i en ny fane), WooCommerce-dokumentasjon, hentet 22. oktober 2026
- WooCommerce 9.2: A better experience for all users (åpnes i en ny fane), WooCommerces utviklerblogg, august 2024
- class-wc-structured-data.php (åpnes i en ny fane) og wc-template-functions.php (åpnes i en ny fane), WooCommerce på GitHub, kontrollert mot versjon 11.2.1, oktober 2026
Alle veiledninger
- Core Web Vitals for nettbutikker: LCP, INP og CLS forklartHva LCP, INP og CLS måler, grensene for god og dårlig ved 75-persentilen, labdata mot feltdata og de vanlige rettelsene i Shopify- og WooCommerce-butikker.
- Fått et ADA-kravbrev om nettstedet? Dette bør du sjekke førstHva et ADA-kravbrev om nettstedet ofte hevder, WCAGs rolle, hva du bør samle inn, hvorfor overlegg ikke retter koden og når du bør ringe advokat. Ikke juridisk råd.
- Sikkerhetssjekker du kan kjøre på nettstedet uten å hacke noePassive sikkerhetssjekker for nettbutikker: utløp av TLS-sertifikat, HSTS, CSP, nosniff, cookie-flagg, blandet innhold, gammel jQuery, security.txt og DMARC.