NowośćProduct Score, 4T Segmentation, Price War i Broken Size są już dostępne.Zobacz, co nowego
Feedance
Artykuł

Dodawanie cost_of_goods_sold do feedu Google: poradnik od eksportu COGS do progów marży

Poradnik krok po kroku: jak dodać cost_of_goods_sold do feedu produktowego Google, dopasować ID z danych koszyka i zamienić zysk brutto w progi marży.

Cagdas PolatCagdas Polat
9 minut czytania

Większość raportów Performance Max pokazuje przychód i ROAS. Niewiele z nich pokazuje zysk brutto, bo Google może go obliczyć tylko wtedy, gdy każdy produkt w feedzie ma przypisany koszt. Google podkreśla, że ten koszt może być przybliżony: jego własny przewodnik konfiguracji sugeruje oszacowanie COGS na 80% ceny produktu, jeśli nie masz dokładnych danych. Ten poradnik jest dla osób zarządzających feedami i liderów płatnych kampanii, które mają gdzieś kolumnę z kosztem (eksport z ERP, cennik dostawcy) i chcą ją umieścić w feedzie Merchant Center. Na końcu będziesz mieć poprawnie sformatowany atrybut cost_of_goods_sold, pasujący do niego tag konwersji oraz pierwszy raport marży, który zamienisz w progi etykiet niestandardowych.

Co robi, a czego nie robi cost_of_goods_sold

cost_of_goods_sold to atrybut Merchant Center, który umożliwia raportowanie zysku brutto. Google opisuje zysk brutto jako przychód minus COGS. Atrybut nie zmienia tego, które produkty są zatwierdzane, jak się wyświetlają ani ile licytujesz. Daje Google Ads jedynie koszt, który odejmuje od przychodu już zapisanego dla każdej sprzedanej sztuki.

Dla większości sprzedawców atrybut jest opcjonalny. Google wymaga go tylko w przypadku automatycznych rabatów i dynamicznych promocji. Dla wszystkich pozostałych to ulepszenie raportowania, które działa tylko wtedy, gdy tag konwersji wysyła także dane koszyka na poziomie pozycji.

Atrybut nie jest ustawieniem licytacji, a Feedance nie zarządza stawkami. Dane dają natomiast wiarygodny obraz tego, które produkty i kampanie zarabiają, dzięki czemu decyzje o strukturze i budżecie, które podejmujesz gdzie indziej, opierają się na zysku, a nie na przychodzie.

Krok 1: Zdecyduj, skąd będzie pochodzić koszt każdego produktu

Google akceptuje wartości dokładne, średnie i szacunkowe, więc pierwsza decyzja dotyczy tego, któremu źródłu ufasz na tyle, by je utrzymywać. Poniżej uszeregowaliśmy opcje według tego, jak często pozostają dokładne po pierwszym miesiącu.

Źródło kosztuDokładnośćNakład utrzymaniaKiedy używać
Eksport z ERP lub systemu magazynowego, per SKUWysokaNiski po automatyzacjiKoszty są już przechowywane dla każdego wariantu
Cennik dostawcy połączony po SKUŚrednia do wysokiejŚredni; cenniki zmieniają się sezonowoBrak ERP, ale masz czysty plik od dostawcy
Średnia dla kategorii (na przykład 0,62 x cena dla jednej kategorii)ŚredniaNiskiMarże są jednolite w obrębie kategorii
Stały procent ceny (przykład Google: 80%)NiskaBrakPotrzebujesz pierwszego raportu w tym tygodniu i dopracujesz go później

Stały procent daje zysk brutto, który porusza się dokładnie razem z przychodem, więc nigdy nie pokaże, że jeden produkt zarabia więcej na sprzedaży niż inny. Użyj go, aby uruchomić raportowanie, a nie do podejmowania decyzji o marży.

Krok 2: Sformatuj atrybut dokładnie

Specyfikacja Google dla cost_of_goods_sold to liczba plus kod waluty ISO 4217, bez powtórzeń, z kropką jako separatorem dziesiętnym. Naruszenie którejkolwiek z tych zasad może sprawić, że produkty nie będą kwalifikować się do raportowania, co skutkuje niekompletnymi danymi.

W feedzie rozdzielanym tabulatorami wartość wygląda tak:

412.50 TRY

W XML:

<g:cost_of_goods_sold>412.50 TRY</g:cost_of_goods_sold>

Używaj dla COGS tej samej waluty, co cena raportowana przez tag konwersji. Google zaleca to, aby uniknąć niespójności wynikających z kursów walut. Sprzedawcy sprzedający w lirach tureckich, których dostawca fakturuje w euro, muszą przed eksportem przeliczyć koszt na liry w feedzie, używając kursu odświeżanego według harmonogramu.

To najczęstsze błędy formatowania, jakie widzimy w kolumnach kosztów, oraz skutki każdego z nich:

Wartość źródłowaProblemPoprawiona wartość
412,50 TRYPrzecinek jako separator dziesiętny, częsty w eksportach z tureckimi ustawieniami regionalnymi412.50 TRY
412.50Brak kodu waluty412.50 TRY
TL 412.50To nie jest kod ISO 4217, a kolejność jest błędna412.50 TRY
1,412.50 TRYSeparator tysięcy wewnątrz liczby1412.50 TRY
0.00 TRYPusty koszt wyeksportowany jako zero, co odczytywane jest jako 100% marżyPomiń atrybut dla tego produktu

Ostatni wiersz to kwestia oceny, a nie reguła Google. Zerowy koszt jest poprawną liczbą, więc Google go zaakceptuje, a zysk brutto dla tej pozycji zostanie zawyżony. Gdy koszt jest nieznany, pomijamy atrybut.

Krok 3: Dostarcz wartość do Merchant Center

Google wymienia trzy sposoby przekazania danych COGS: feed produktowy, Content API (i jego następca Merchant API) lub feed uzupełniający. Feed uzupełniający jest zwykle najbezpieczniejszą drogą, gdy dane o kosztach pochodzą z innego systemu niż katalog produktów, bo możesz wysłać plik z dwiema kolumnami (id i cost_of_goods_sold) bez ingerencji w feed główny.

Jeśli zarządzasz feedami za pomocą platformy, odpowiednikiem jest warstwa, która dodaje atrybut bez przepisywania źródła. W Feedance służą do tego feedy uzupełniające, a Feed Rules mogą obliczyć średni koszt kategorii na podstawie ceny, jeśli używasz szacunku. Nie opublikowaliśmy przykładu klienta dla tego konkretnego zastosowania, więc mechanikę traktuj tak, jak opisano ją na stronach tych funkcji.

Krok 4: Sprawdź, czy dane koszyka zgadzają się z ID w feedzie

Koszt jest używany tylko wtedy, gdy Google może dopasować sprzedaną pozycję do pozycji z feedu. Pomoc Google podaje, że ID pozycji w tablicy items tagu konwersji muszą dokładnie odpowiadać atrybutowi id w feedzie Merchant Center oraz że przetwarzane są tylko pozycje z konta Merchant Center połączonego z kontem Google Ads. Kwalifikujące się konwersje muszą być konwersjami zakupu uwzględnianymi w licytacji, korzystającymi z tagu Google lub Google Tag Manager.

Przejdź tę listę kontrolną, zanim zaczniesz czekać na dane:

  1. Konto Merchant Center jest połączone z kontem Google Ads, które jest właścicielem konwersji zakupu.
  2. Tag zakupu wysyła tablicę items z ID, ceną i ilością dla każdej pozycji zamówienia.
  3. ID w tagu to ten sam ciąg znaków co id w feedzie, łącznie z wielkością liter i ewentualnym sufiksem wariantu. Jeśli tag wysyła SKU produktu nadrzędnego, a feed używa ID wariantów, nic się nie dopasuje.
  4. Cena w tagu jest w tej samej walucie co wartości COGS.
  5. Diagnostyka akcji konwersji nie pokazuje ostrzeżeń o niedopasowanych ID. Google wskazuje tę sekcję diagnostyki jako miejsce do wyszukiwania niezgodności.

Niezgodność ID pozycji to najczęstszy powód, dla którego po wdrożeniu COGS zamiast liczb widać kreski. Google zaznacza, że bez atrybutu COGS wartości COGS i zysku brutto w raportach są puste lub wyświetlane jako kreska.

Krok 5: Przeczytaj pierwszy raport i porównaj go z danymi finansowymi

Google Ads udostępnia wyniki jako zysk brutto, marżę zysku brutto, koszt sprzedanych towarów, przychód i liczbę sprzedanych sztuk. Dla Performance Max Google Ads API dokumentuje te metryki jako metrics.gross_profit_micros, metrics.gross_profit_margin i metrics.cost_of_goods_sold_micros, dostępne w asset_group_product_group_view, campaign, customer i shopping_performance_view.

Dwa zastrzeżenia z dokumentacji API wpływają na sposób czytania pierwszych liczb. Metryki danych koszyka nie są dostępne, dopóki nie zostaną zarejestrowane wszystkie konwersje dla powiązanych produktów, więc pierwsze dni będą wyglądać na niekompletne. Ponadto od 15 czerwca 2026 r. shopping_performance_view obejmuje dane ze wszystkich sieci Performance Max, a nie tylko z Sieci Reklamowej, więc metryki mogą jednorazowo wzrosnąć po dodaniu tych danych. Jeśli porównujesz stan przed zmianą i po niej, nie traktuj tego jednorazowego skoku jako efektu zmiany w feedzie.

Zweryfikuj wyniki prostą kontrolą: wybierz tydzień, weź przychód, który Google Ads przypisuje do danych koszyka, odejmij koszt tych samych produktów według działu finansów i porównaj. Jeśli twoje COGS jest średnią, spodziewaj się różnicy. Nie oczekuj, że wyniesie zero.

Krok 6: Zamień zysk brutto w progi marży

Gdy marża zysku brutto jest widoczna dla każdego produktu, pogrupuj produkty w kilka progów i wpisz próg do etykiety niestandardowej. Google dopuszcza custom_label_0 do custom_label_4, każdą do 100 znaków, z jedną wartością na produkt dla każdego atrybutu i do 1000 unikalnych wartości na etykietę. Wystarczą trzy do pięciu progów.

Przykładowy schemat (liczby są przykładami, a nie benchmarkami):

Marża brutto od ceny w feedzieWartość custom_label_1Typowe zastosowanie
Poniżej 20%margin_lowOsobna grupa produktów; oceniaj po zysku na kliknięcie, a nie po ROAS
20% do 40%margin_midGrupa domyślna
Powyżej 40%margin_highKandydat do większego budżetu
Brak COGSmargin_unknownLista do przeglądu; popraw dane

Próg jest obliczany po stronie feedu na podstawie price i cost_of_goods_sold, więc reguła feedu może zapisywać go automatycznie przy każdej przebudowie feedu. Nasz wcześniejszy artykuł o etykietach niestandardowych, typie produktu i ID pozycji w grupach produktów Performance Max opisuje, ile wymiarów etykiet może unieść drzewo grup produktów, zanim się rozdrobni. Jeśli chcesz sprawdzić, czy zmiana pomogła, nasza metoda mierzenia wpływu zmiany w feedzie na ROAS ma zastosowanie bez zmian.

Krok 7: Utrzymuj kolumnę kosztów przy życiu

Koszt dezaktualizuje się szybciej niż cena. Przypisz mu właściciela i częstotliwość odświeżania. Eksportuj dane ponownie po każdej zmianie cen u dostawcy, każdej istotnej dla marży zmianie kursu walut i w każdym sezonie. Produkt, którego koszt przekracza cenę, powinien pokazywać ujemną marżę w twojej własnej kontroli, zanim w ogóle trafi do raportu.

Gdzie to zawodzi

Raportowanie COGS mierzy zysk brutto na sprzedanych pozycjach. Nie uwzględnia dopłat do wysyłki, zwrotów, opłat płatniczych ani wydatków na reklamę, więc produkt może wykazywać zdrową marżę brutto i mimo to przynosić stratę. Dokumentacja SA360 Google podaje przykład kosztu hurtowego przed podatkiem, wysyłką i kosztami reklamy, co potwierdza ten zakres.

Zależy to także od poprawnego wdrożenia danych koszyka i wymaga, aby zakup był konwersją, którą Google może przypisać. W tych metrykach mogą pojawić się tylko zakupy raportowane jako konwersje z danymi koszyka.

Średnie ukrywają zmienność. Jeśli jedna kategoria łączy akcesorium z marżą 15% z produktem podstawowym z marżą 55%, średnia kategorii błędnie odzwierciedli oba.

Konkurencja też to obsługuje. DataFeedWatch publikuje poradnik o dodawaniu kosztu sprzedanych towarów do feedu na potrzeby raportowania zysku brutto, a platformy skoncentrowane na rentowności produktów, takie jak ROI Hunter, mogą lepiej pasować, jeśli logika zysku jest twoją główną potrzebą (zobacz nasze porównanie). Feedance przygotowuje dane; nie ustawia na ich podstawie stawek ani budżetów.

FAQ

Czy cost_of_goods_sold jest wymagany w Google Shopping?

Nie. Google traktuje go jako opcjonalny, z wyjątkiem automatycznych rabatów i dynamicznych promocji, gdzie jest wymagany. Bez niego reklamy działają normalnie, ale metryki COGS i zysku brutto są puste.

Czy koszt musi być dokładny?

Nie. Google mówi, że dane służą do raportowania i nie muszą być dokładne. Jeśli koszt różni się między produktami, podaj średnią lub przybliżone oszacowanie, na przykład 80% ceny.

Czy klienci mogą zobaczyć koszt?

Google opisuje atrybut jako dane wejściowe do raportowania, używane, gdy konwersje są raportowane z danymi koszyka. Jego dokumentacja nie przedstawia go jako treści reklamy, ale nie testowaliśmy każdej powierzchni, więc potwierdź to na własnym koncie.

Dlaczego w raportach zysk brutto jest wyświetlany jako kreska?

Zwykle brakuje atrybutu albo ID w tagu konwersji nie zgadzają się z id w feedzie. Najpierw sprawdź w diagnostyce akcji konwersji, czy nie ma niedopasowanych ID.

Jakiej waluty powinienem użyć?

Waluty ceny raportowanej przez tag konwersji. Google zaleca ich dopasowanie, aby uniknąć niespójności wynikających z kursów walut.

Czy to działa z Performance Max?

Tak. Google Ads API dokumentuje metryki danych koszyka, w tym zysk brutto i marżę zysku brutto, dla kampanii Performance Max, w których wdrożono konwersje z danymi koszyka.

Gdzie to dodać, jeśli nie chcę edytować głównego feedu?

Użyj feedu uzupełniającego albo Content API lub Merchant API. Google wymienia je obok feedu głównego jako akceptowane metody dostarczania.

Czym różni się to od etykiet niestandardowych?

Atrybut kosztu zasila raportowanie zysku w Google. Etykieta niestandardowa to segment, który definiujesz na potrzeby struktury kampanii. Pierwszego używasz do obliczenia marży, a drugiej do działania na jej podstawie.

Sprawdź swój feed, zanim dodasz kolumnę kosztów

Kolumna kosztów pomaga tylko wtedy, gdy reszta feedu jest poprawna. Przepuść swój feed przez darmowe narzędzie do audytu feedu produktowego, aby znaleźć brakujące i błędnie sformatowane atrybuty, zanim zbudujesz na nich progi marży.

Źródła

Chcesz, by ktoś jeszcze spojrzał na twój feed? Przejrzymy go razem z tobą i pokażemy luki przed kolejnym przesłaniem.
Zrób bezpłatny audyt
Cagdas Polat
Autor
Cagdas Polat

Współzałożyciel Feedance, gdzie wykorzystuje swoje doświadczenie jako inżynier komputerowy i marketer, aby dostarczać analityczne wnioski. Skupia się na przekształcaniu danych w konkretne strategie i pomaga markom osiągać znaczący wzrost w świecie cyfrowym.

LinkedIn

Zobacz, które
produkty zarabiają.

Połącz swój feed i GA4. Pokażemy Product Score, 4T, Price War i Broken Size na twoim własnym katalogu.