En full custom-bygget nettbutikk for hair extensions, bygget som pilot for eventuell erstatning av Luxushair-plattformen (som driftes på WordPress/WooCommerce siden 2009). Egen produktkatalog, eget admin-panel, pris-historikk med EUR-kost-tracking, og full Bring/Klarna/Vipps-flyt – alt i Next.js 14 med Prisma og Neon Postgres.
Forsiden: produkthero, ekte remy-hår-kommunikasjon og direkte CTA-er til Handle og Finn din farge.
Luxushair har driftet på WooCommerce siden 2009, og den fungerer. Men en plattform du har vokst med i 15+ år, samler opp friksjon: gamle plugins som ingen tør å fjerne, betalingsmoduler som krasjer ved hver WordPress-oppdatering, og rapporter som krever manuell Excel-eksport for å bli brukbare.
LuxusLengths ble bygget for å teste én konkret hypotese: «Kan jeg lage noe som er raskere, ryddigere, og som har de smarte business-funksjonene (pris-historikk, varekost-tracking, valuta-justering) bygget inn fra start – uten at det blir så komplekst at det ikke er verdt det?»
Svaret er foreløpig ja. Demoen kjører på luxuslengths.vercel.app, og dersom den når kriteriene mine (under 2 sekunders LCP, full Bring/Klarna/Vipps-flyt, admin-panel der jeg kan håndtere alt fra nettleser uten å åpne phpMyAdmin), blir den vurdert som erstatter når Luxushair-relansering uansett skal opp.
Tape, Keratin, Clip-on, Ponytail, Halo og hårpleie. Egne sider per produkt med varianter.
Skygge (Midnatt, Karamell, etc.), lengde og SKU per variant. Egen lagerstand og varekost.
Kunde laster opp bilde, får fargematch-anbefaling tilbake. Klar feature for retur-reduksjon.
Klarna, Vipps og kort. Fri frakt over 1 499 kr. 14 dagers returrett.
NextAuth med bcrypt-hashing, e-postverifisering via SendGrid, ordreoversikt.
Ordrer, produkter, lager, kunder, rapporter og innstillinger. Bygget for daglig drift.
Sporer varekost per variant over tid – med EUR-pris, EUR/NOK-kurs og kilde-merking. Lar meg se hvordan leverandørprisene har endret seg.
«Send med Bring» direkte fra ordresiden. Lager pakkesporing og oppdaterer ordrestatus automatisk.
Mega-meny med kategori-filtrering og varianter: skygge (Midnatt, Karamell, etc.) og lengde (40, 50, 60 cm).
Det er ikke butikkfronten som avgjør om en nettbutikk faktisk er bra å eie. Det er driftssiden. Etter 15 år med WooCommerce-admin vet jeg presis hva som irriterer meg daglig: rapporter som krever Excel-eksport, lager-status spredt på fem ulike steder, og pris-håndtering som kun finnes som plugins-tillegg du må betale separat for.
LuxusLengths sitt admin-panel er bygget for å løse akkurat det. Dashbordet samler KPI-ene jeg faktisk sjekker hver morgen, og menystrukturen til venstre er ordnet etter hvor ofte ting brukes: Ordre og Kunder daglig, Lager og Prishistorikk ukentlig, Innstillinger sjelden.
Dashbord med ordre-i-dag, omsetning 7/30 dager, antall som skal pakkes, og siste ordre med leveringsstatus.
Bygget med rolle-basert tilgang (admin, ops, viewer) så jeg kan gi en pakkeansatt tilgang til Ordre og Lager uten å eksponere økonomi-data. Innlogging skjer mot egen AdminUser-tabell med bcrypt-hashing, og demo-konto er åpent dokumentert for å la potensielle kunder teste flow-en.
Innlogging med åpne demo-credentials: helene@luxuslengths.no / Sommer2026! – du kan teste hele admin-flow-en direkte.
Det smarteste i prosjektet er pris-historikk-modellen. For en hair extensions-butikk er varekost ikke en konstant – den følger leverandør-priser og EUR/NOK-kurs. Vanlig WooCommerce har én pris per produkt. Min schema sporer hver endring som egen rad:
Det betyr at jeg kan svare på «hva var marginen i februar 2026 versus mai?», og at jeg kan justere kalkulerte priser når EUR/NOK svinger uten å miste historikken. Det er den typen business-logikk som ikke kommer ut av boksen i Shopify eller WooCommerce, men som gir reell innsikt for en lagerførende nettbutikk.
Siden jeg eier begge plattformene og driver Luxushair daglig, har jeg uvanlig tilgang til å sammenligne dem på ekte data. Tabellen er ærlig: WooCommerce er ikke dårlig. Den vinner på flere felter. Men det er konkrete områder der custom-bygget faktisk betaler tilbake innsatsen.
| Område | Luxushair (WooCommerce) | LuxusLengths (Next.js) | |
|---|---|---|---|
| Stack | WordPress + WooCommerce + ~30 plugins | Next.js 14 + Prisma + Neon Postgres, ingen plugins | |
| Tid å bygge fra null | 2-3 uker med fastpris-pakke | 6-8 uker for custom utvikling | WC vinner |
| Tid å vedlikeholde månedlig | 2-4 timer (plugin-oppdateringer, sikkerhetspatcher, plugin-konflikter) | 15-30 min (dependency-oppdateringer, deploy via Vercel) | LL vinner |
| PageSpeed mobil | 62 etter optimalisering (uten optimalisering: 31) | 94 ut av boksen, uten manuell tuning | LL vinner |
| Førstegangslast (LCP) | 3.8 sekunder mobil | 1.4 sekunder mobil | LL vinner |
| Bestseller-rapport | WooCommerce Analytics, kjapt | Egen rapport i admin-panel, kjapt | Uavgjort |
| Varekost-tracking | Ikke innebygd (krever WooCommerce Cost of Goods Pro: 79 USD/år) | Innebygd PriceHistory-modell med EUR/NOK-tracking | LL vinner |
| Pris-historikk per variant | Ikke mulig uten egen plugin | Innebygd, hver endring lagres med kilde og notat | LL vinner |
| Tilpasning av kasseflyt | Begrenset til plugin-hooks, kan brytes ved oppdatering | Full kontroll, men du skriver den selv | LL vinner |
| Vipps-integrasjon | Offisiell plugin, fungerer godt | Egen integrasjon mot Vipps API, mer arbeid | WC vinner |
| Klarna-integrasjon | Krokedil-plugin, offisiell støtte | Egen integrasjon, fungerer men krever vedlikehold | WC vinner |
| Bring-integrasjon | Bring Fraktguiden-plugin, ferdig oppsett | Egen Bring API-klient, full kontroll over flyt | Uavgjort |
| Selv-publisering av blogg/innhold | Drømmeverktøy for innholdsmarkedsføring | Krever egen CMS-løsning eller hardkodet innhold | WC vinner |
| Sikkerhet i drift | Kontinuerlig oppdatering nødvendig, plugin-bakdører historisk problem | Mindre angrepsflate, ingen plugins som kan kompromitteres | LL vinner |
| Hosting-kost | 150-400 kr/mnd for anstendig WP-hosting | 0 kr/mnd Vercel hobby + 0-19 USD/mnd Neon (skalerer med trafikk) | Uavgjort til 5k+ besøk/dag |
| Plugin-kostnad årlig | 3 500-8 000 kr/år (Klarna, Vipps Pro, backup, sikkerhet, ytelse, Cost of Goods) | 0 kr (alle integrasjoner er egne, ingen tredjeparts-lisenser) | LL vinner |
| Endring av forretningslogikk | Krever plugin-utvikling eller hooks, fragmentert | Endre TypeScript-kode direkte, samlet i én kodebase | LL vinner |
| Bytte plattform senere | WordPress data-export er etablert, mange vei ut | Du eier Postgres-databasen direkte, eksport trivielt | Uavgjort |
Basert på sammenligningen, anbefaler jeg custom Next.js fremfor WooCommerce kun hvis minst to av disse stemmer:
Hvis ingen av disse stemmer: behold WooCommerce. Det er fortsatt det beste valget for 85 % av norske småbedrifter.
WooCommerce er en plugin til WordPress med ferdige integrasjoner, lav byggetid (2-3 uker) og stort plugin-økosystem. Custom Next.js-nettbutikk er bygget fra null med full kontroll over forretningslogikk, raskere ytelse (PageSpeed 94 vs 62 i sammenligningen min), lavere driftskost, men krever 6-8 ukers byggetid og mer utviklerkompetanse å vedlikeholde.
Anbefales kun hvis minst to av disse stemmer: du har egen forretningslogikk plugins ikke dekker (varekost-tracking, abonnement, kompleks variant-håndtering), du har volum nok til at månedlig WP-vedlikehold koster mer enn engangsutvikling, du har dårlig erfaring med plugin-konflikter eller hack, du integrerer mot ERP eller egen leverandørportal, eller du har løpende utviklerressurs. For 85 % av norske småbedrifter er WooCommerce fortsatt riktig valg.
Pris-historikk-tracking er en datamodell som lagrer hver endring i varekost over tid, med kilde, dato og valgfri valutaomregning. I LuxusLengths sporer modellen costNok, costEur, eurNokRate, source og note for hver variant. Det lar deg svare på spørsmål som «hva var marginen i februar versus mai?» og justere kalkulerte priser når valuta endres, uten å miste historikken. WooCommerce har ikke dette innebygd – det krever betalt plugin.
Realistisk 6-8 uker for en custom Next.js-nettbutikk med produktkatalog, varianter, brukerkonto, kasse, betalingsintegrasjoner (Klarna, Vipps), fraktintegrasjoner (Bring) og eget admin-panel. WooCommerce-nettbutikk med tilsvarende funksjonalitet tar 2-3 uker med fastpris-pakke.
Engangsutvikling typisk 80-200 000 kr avhengig av kompleksitet og integrasjoner. Til sammenligning ligger en WooCommerce-nettbutikk fra 19 900 kr som fastpris. Driftskostnad for Next.js er lavere over tid: 0-19 USD/mnd hosting (Vercel + Neon) versus 150-400 kr/mnd WP-hosting pluss 3 500-8 000 kr/år i plugin-lisenser.
Ja. WooCommerce har etablert eksport-format for produkter, kunder og ordrer. Migrering til Next.js + Prisma + Postgres innebærer skriving av import-script som leser eksport-CSV og fyller Prisma-modellen. Realistisk 1-2 ukers arbeid å migrere en mellomstor nettbutikk.
Next.js 14 med App Router, React 18, TypeScript, Prisma 6 mot Neon Postgres, NextAuth 5 for autentisering med bcrypt-passordhashing, SendGrid for transaksjons-e-post, Bring API for fraktetiketter og pakkesporing, Klarna og Vipps for betaling. Hosting på Vercel.
Demo i drift på luxuslengths.vercel.app. Footer merker tydelig at det er demo og ikke kjøpbar nettbutikk. Beslutning om eventuell Luxushair-relansering tas etter videre testing av admin-flow på reelle ordre-volum.
LuxusLengths er det jeg bygger når en kunde har vokst forbi WooCommerce og trenger custom forretningslogikk (varekost-tracking, prisautomatisering, integrasjoner mot leverandører eller egen logistikk). Det er ikke første-valget for en nystartet nettbutikk – det er andre-generasjons valg når du vet nøyaktig hva du trenger og hvorfor plattform-løsninger ikke gjør jobben.
Hvis du har vokst forbi Shopify eller WooCommerce og trenger en plattform bygget på dine premisser, send en e-post med hva du faktisk trenger.
Send en e-post Åpne demo