Manuella CSV-exporter mot Prisjakt och Google Merchant Center är ett av de mest underskattade tidstjuvarna i svensk e-handel. En produktansvarig som spenderar 6 timmar i veckan på att manuellt mappa kategorier, fylla i GTIN och uppdatera lagerstatus i Excel kostar företaget 100 000+ kr per år — och datan är ändå alltid 24 timmar gammal när den når jämförelsesajterna.
Den här artikeln beskriver hur ett automatiserat produktdataflöde faktiskt ska byggas: vad som ska ligga i WooCommerce/PIM, hur transformationerna ska struktureras, vilka kanaler som kräver vad, och hur man hanterar felen som oundvikligen uppstår när du syncar 5 000+ produkter mot 4 olika destinationer.
Källan: en single source of truth
Innan något pratar om feeds måste produktdatan ha en tydlig hemvist. För svenska e-handlare är det typiskt:
- WooCommerce — för butiker upp till ~5 000 SKU där produktdatan inte används utanför webben.
- WooCommerce + custom PIM-tabeller — när produktdatan har egna fält som inte passar i WooCommerce (tekniska specifikationer, multi-language, varianter med komplex matris).
- Dedikerad PIM (Akeneo, Pimcore, Plytix) — för 10 000+ SKU eller multi-channel där samma data ska till webb + Google + Amazon + retail-partners.
- ERP som källa (Visma.net, Fortnox, Microsoft Dynamics) — för B2B där produktdatan redan ligger i affärssystemet och WooCommerce bara är en visning.
Google Merchant Center / Google Shopping
Google Shopping är fortfarande den mest avgörande feed-destinationen för svensk e-handel — både för betalda Shopping-annonser och för organisk exponering i Google Shopping-flikens fria listings. Krav på feed:
- Format: XML eller TXT, helst hostat som en URL Google kan hämta varje 24 h.
- Obligatoriska fält: id, title, description, link, image_link, availability, price, condition, brand, GTIN/MPN.
- Rekommenderade fält: google_product_category (Googles taxonomi, ~6 000 kategorier), product_type (din egen taxonomi), gender, age_group, color, size, material.
- Avoid: Promotional text i title (”BÄSTA PRIS!”), ALL CAPS, emojis. Google flaggar produkterna och kan disapprovera kontot.
För WooCommerce: använd Product Feed PRO for WooCommerce eller bygg en egen REST-endpoint som returnerar XML. Den senare ger full kontroll och kan transformera data on-the-fly utan att duplicera den i en intermediate cache.
Prisjakt
Prisjakt är Sveriges största prisjämförelsesajt med ~3 miljoner månatliga unika besökare. Krav:
- Format: CSV med pipes som separator (”|”), UTF-8.
- Krävs: SKU, Name, Description, Category (Prisjakts egen taxonomi), Price, Stock, URL, Image_URL, EAN/GTIN.
- Tipp: Prisjakt matchar produkter via EAN/GTIN. Saknas EAN matchas på produktnamn — vilket är opålitligt och leder till att din produkt inte syns på rätt jämförelsesida.
- Frekvens: Prisjakt hämtar feed:en 4x per dygn. Lagerstatus ska vara aktuell.
Pricerunner
Pricerunner (numera del av Klarna) är näst största prisjämförelsesajten i Norden. Liknar Prisjakt tekniskt men accepterar både CSV och XML, och har en strikare kategori-mappning som är viktig att få rätt på.
Den verkliga utmaningen: kategori-mappning
Det här är där 80 % av problemen ligger. Din butik har sin egen kategori-struktur (”Verktyg → Handverktyg → Borrmaskiner”), Google har sin (”Hardware > Tools > Power Tools > Drills”), Prisjakt har en tredje, Pricerunner en fjärde. Lösning:
- Bygg en mapping-tabell per kanal: din kategori → kanalens kategori.
- Underhåll mappningen i en config-fil (CSV, JSON eller en custom admin-vy).
- Validera vid feed-generering: produkter utan kategori-mapping skickas inte.
- Logga vilka produkter som droppas så att produktansvarig ser pipelinens hälsa.
Datakvalitet — det dolda guldet
Ett feed kan vara tekniskt perfekt och ändå ge dålig konvertering. Datakvalitet är det som faktiskt skiljer:
- Title: Märke + Modell + Nyckel-spec (storlek, färg, version). ”Bosch GSR 12V-15 Borrskruvdragare 12V” rankar bättre än ”Bosch borr”.
- Description: 200+ tecken, beskriv produkten objektivt utan reklamspråk. Använd unika beskrivningar per produkt — inte leverantörens generiska text.
- Bilder: Vit bakgrund, minst 800×800 px för Google, kvadratiska bättre än rektangulära.
- GTIN/EAN: Saknar du dem för 30 % av sortimentet rasar din synlighet på Google. Begär dem från leverantörer eller köp via GS1.
Felhantering och övervakning
När 5 000 produkter genereras dagligen mot 4 destinationer kommer det att uppstå fel. Bygg in:
- Validering vid generering: kolla att obligatoriska fält finns, datatyper är rätt, URLs returnerar 200.
- Diff-rapport: hur många produkter försvann sedan förra körningen? Stora drops indikerar en bug.
- Slack/e-postnotis vid feed-fel — produktansvarig ska veta inom 1 timme, inte upptäcka det 3 dagar senare när Shopping-trafiken försvunnit.
- Health-endpoint: /feed-health.json som returnerar last-run, error-count, product-count för uptime-monitorering.
Vanliga frågor
Är ett plugin tillräckligt eller behövs custom-utveckling?
Plugins (Product Feed PRO, ELEX Google Shopping) räcker för standard-fall: en kanal, generisk kategori-mapping, ingen integration med externa system. För B2B-flöden, multi-channel med differentierad data per kanal eller integration mot ERP/PIM är custom-byggda flöden nästan alltid nödvändiga.
Hur ofta ska feed:en uppdateras?
Lagerstatus minst varje timme — annars annonserar du produkter som är slut. Pris dagligen. Övriga fält vid produktändring. För stora kataloger används delta-uppdateringar (Google Content API) istället för full feed-rebuild.
Kan jag feed:a samma data till alla kanaler?
Tekniskt ja, men inte optimalt. Olika kanaler har olika optimal title-struktur, olika kategori-taxonomi och olika rekommenderade fält. En centraliserad transformations-pipeline med kanalspecifika templates ger 20–40 % bättre konvertering jämfört med samma feed till alla.
Vill du automatisera dina produktdataflöden?
AV Group bygger produktdataflöden mot Google Shopping, Prisjakt, Pricerunner och Amazon för svenska e-handlare. Vi gör även WooCommerce-utveckling, B2B-portaler och som certifierad Google CSS Partner sänker vi dessutom dina Shopping-annonskostnader. Ansök om att jobba med oss.