Product feeds personalizate în Klaviyo înseamnă catalog lookups și șabloane Django peste recomandările AI, ca să controlezi ce imagine, ce preț și ce context vede fiecare abonat. Blocul implicit arată produsul, dar nu vinde contextul. Diferența dintre un feed generic și unul care convertește stă în datele din catalog, nu în magie.

Ce spune sursa, pe scurt

Klaviyo a publicat pe blog o analiză semnată de Anna Sophie Fokdal Christensen, head of email and retention la FABO, despre cum se construiesc product feeds personalizate. Ideea centrală: blocul standard de product feed e un punct de plecare solid, dar pentru brandurile de lifestyle și apparel rămâne prea rigid. Sursa e disponibilă aici: Klaviyo.

Pe scurt, fără să traduc textul: recomandările vin din AI-ul Klaviyo, care rankează produse după browsing, click și cumpărare. Prezentarea însă se construiește manual cu catalog lookups și Django, ca să alegi ce imagine apare, să afișezi prețul tăiat și procentul de reducere, să adaugi vendor sau descriere, să separi numele produsului de variantă și să excluzi stocurile zero sau produsele retrase. Autoarea menționează și un client retail cu conversii unice în creștere de aproape 65% și revenue per recipient peste 9% după implementare. Sunt cifre raportate de autoare pentru conturile ei, nu un studiu independent și nu rezultate ale agenției noastre.

Atât despre sursă. Restul e comentariu.

De ce blocul implicit nu ajunge pentru ecommerce serios

Blocul drag-and-drop face exact ce promite: alege câte produse arăți, unde stă butonul, ce scrie pe el. Pentru un magazin cu 30 de SKU-uri și o singură colecție, e suficient. Pentru orice brand care are un catalog real, se lovește imediat de trei limite care costă.

Prima: imaginea. Feedul ia prima poză din array. În apparel, prima poză e aproape mereu packshot-ul pe fundal alb. Restul bibliotecii, cu produsul purtat, în context, stilizat, rămâne nefolosită. Într-un email, packshot-ul pe alb nu vinde nimic. Omul vrea să vadă cum cade produsul, nu cum arată pe raft.

A doua: structura. Nu poți restiliza numele produsului sau prețul, nu poți adăuga un câmp nou precum brandul sau o descriere scurtă. Dacă merchandising-ul tău cere ceva mai specific decât atât, ai atins tavanul.

A treia, cea mai scumpă: logica de preț și de stoc. Un feed care afișează un produs epuizat sau un preț fără reducere într-o campanie de reducere nu e doar urât. E o promisiune ruptă, iar promisiunile rupte în email se plătesc în rata de dezabonare și în încredere.

Ce înseamnă, concret, un feed construit pe catalog lookups

Aici merită să fii precis, pentru că termenii sună mai complicat decât sunt. Catalog lookups înseamnă că apelezi câmpuri specifice din catalogul tău într-un șablon de email. Django e limbajul de șablon care stă în spate. Nu e magie, e formatare controlată rând cu rând.

Ce devine posibil odată ce ai structura asta:

Nimic din toate astea nu cere o funcție pe care Klaviyo nu o are deja. E același catalog și aceeași structură de cod disponibilă în orice cont. Asta e partea importantă: nu e un feature nou de achiziționat, e execuție.

Datele din catalog sunt adesea mai bune decât crezi

Un punct din sursă care merită scos în față: problema nu e lipsa datelor, ci formatul lor. Autoarea descrie un brand de bijuterii cu catalog Shopify bogat, cu citate despre design și note despre cum a fost făcut fiecare produs. Nimic din asta nu ajungea în Klaviyo implicit.

Soluția a fost să treacă catalogul printr-un feed-management tool, să remodeleze datele și să le readucă în Klaviyo ca custom catalog. Rezultatul: citatele și notele de design ajung direct în email.

De ce contează exemplul: în bijuterii, nouă piese aproape identice la același preț într-un grid sunt un zid. Ce funcționează e mai puține produse, din unghiuri diferite, purtate, cu un pic de context. Asta nu e o problemă de AI. E o problemă de date și de curățenie în catalog.

Aceeași logică se aplică la orice magazin cu atribute ascunse: material, țară de origine, dimensiuni, compatibilitate. Dacă datele există în platformă dar nu ajung în CRM, ai muncă de făcut înainte de orice test de personalizare.

Cum arată un setup sănătos, pas cu pas

Vreau să fiu clar: ce urmează sunt pași propuși de noi, nu instrucțiuni preluate din sursă și nu rezultate garantate.

  1. Audit de catalog. Ce câmpuri ai, ce e completat constant, ce e gol la 40% din SKU-uri. Dacă vendor e completat la jumătate, nu-l pune în template.
  2. Audit de imagini. Câte produse au on-model? Care e poziția în array? Dacă poziția variază haotic între produse, curățenia în catalog vine înainte de template.
  3. Reguli de excludere. Stoc zero, produse retrase, marja sub un prag, produse cu probleme de livrare. Scrie-le explicit, nu le lăsa la latitudinea feedului.
  4. Logică de preț. Decizi cum arăți reducerea și în ce monedă. La magazinele multi-currency, un mesaj plat de „on sale" nu spune povestea completă, iar procentul calculat per produs și per monedă e mai cinstit.
  5. Template reutilizabil. Construiești o dată, adaptezi pentru flow-uri noi cu efort redus. Welcome, cart abandonment, browse abandonment, win-back, campanii.
  6. Măsurare înainte de extindere. Alegi o singură ipoteză per test și compari pe un interval suficient de lung, cu un martor clar.

Aici intervine disciplina de măsurare pe care o aplicăm în analytics pentru orice canal: o schimbare de template nu e rezultat până nu ai un martor și un număr. Dacă vrei să vezi cum structurăm raportarea pe trafic și atribuire, e un punct de plecare util.

Un detaliu pe care nu trebuie să-l ignori: automatizarea alegerii produselor nu înseamnă verificare zero pe template. Un șablon cu logică de preț și excluderi care rulează greșit poate trimite prețuri incorecte la mii de abonați. Aici se aplică aceeași disciplină ca la detecția erorilor în workflow-uri AI: pui un pas de validare înainte de producție, nu după.

Ce înseamnă pentru tine, marketer sau antreprenor în România

Dacă ai un magazin pe Shopify sau un catalog sync-uit în Klaviyo, întrebarea nu e dacă poți construi feeduri personalizate. Poți, cu structura existentă în cont. Întrebarea e dacă ai datele curate ca să merite.

Scenariu ipotetic, ca să fie clar: un magazin de îmbrăcăminte cu 800 de SKU-uri, 60.000 de abonați, flow de welcome și cart abandonment. Dacă 30% din produse au packshot pe poziția zero și restul au on-model, un feed care referențiează poziția fixă produce inconsistență vizuală. Înainte să construiești template-ul, uniformizezi convenția de imagini în catalog. Asta e muncă de ecommerce, nu de email.

Al doilea scenariu: retailer multi-brand cu 40 de branduri. Vendorul e câmpul care lipsește din blocul implicit, iar clientul vrea să știe ce cumpără. Aici catalog lookup-ul rezolvă o problemă reală de merchandising, nu una estetică.

Al treilea, cel mai frecvent: magazin cu reduceri permanente. Un template care calculează procentul per produs și per monedă elimină munca manuală de editare a fiecărui email. Câștigul e operațional înainte să fie de conversie.

Ce nu poți deduce din sursă: cât timp îți ia implementarea, ce rezultate vei avea tu, dacă clienții tăi reacționează la fel. Cifrele raportate de autoare sunt ale ei, pe conturile ei. Nu le transforma în așteptări.

Limite și ce verifici înainte să te arunci

O verificare incompletă nu dovedește că o funcție lipsește sau că un template nu funcționează. Dacă nu ai date, ipoteza rămâne ipoteză.

FAQ

Trebuie să știu Django ca să fac product feeds personalizate în Klaviyo? Pentru un template de bază, cu câmpuri simple și logică de preț, nu. Pentru reguli mai complexe, da, sau ai nevoie de cineva care le stăpânește. Documentația Klaviyo și cea Django sunt punctul de plecare.

Recomandările personalizate funcționează și pentru abonați noi, fără istoric? Sursa spune că da, pentru că platforma folosește comportamentul onsite, nu doar cumpărările. Cât de relevante sunt pentru un abonat complet nou e o întrebare separată, care se testează, nu se presupune.

Pot exclude produsele epuizate automat? Da, regulile de excludere fac parte din logică și se pot baza pe starea stocului din catalog. Condiția e ca stocul să fie sincronizat corect și la timp.

Arc final: AI analizează, omul decide, agenția execută

AI-ul din Klaviyo rankează bine și rapid ce ar putea vrea fiecare abonat. Un model poate analiza catalogul, poate propune structura template-ului, poate semnala câmpurile lipsă. Dar decizia despre ce imagine reprezintă brandul, ce prag de stoc exclude un produs și ce monedă afișezi în ce campanie rămâne a unui om care cunoaște businessul. Media buyer-ul și echipa de retention validează logica, verifică output-ul înainte de trimitere și măsoară cu martor.

Noi facem pasul de execuție: audit de catalog, reguli de excludere, template-uri reutilizabile și raportare care separă ce s-a măsurat de ce presupunem. Fără promisiuni de cifre, cu verificare la fiecare pas. Detalii pe allsoftagency.ro.