Agent kampanii w Microsoft 365 Copilot: ROAS kontra marża

Temat: Handel wielokanałowy

W sześciu krokach zbudujecie w Agent Builderze Microsoft 365 Copilot agenta, który dla każdej kampanii stawia obok siebie dwie liczby: zwrot z wydatków na reklamę (ROAS) z panelu i marżę po zwrotach, koszcie towaru, prowizjach, płatnościach, wysyłce i obsłudze zwrotów. Tam, gdzie te liczby się rozjeżdżają, agent przygotowuje rekomendację dla marketingu. Kampanii nie wyłącza i budżetu nie rusza. Stan funkcji sprawdzony 15.10.2026 w dokumentacji Agent Buildera.

Przepis należy do serii o handlu wielokanałowym jako jednym systemie i rozwija kartę agenta kampanii. Dane ćwiczeniowe opisują fikcyjny sklep ogrodowy: kwiecień 2026, pięć kampanii, 1015 zamówień, 88 zwrotów.

Gotowy skill. Procedurę agenta rozliczenia kampanii z tego przepisu znajdziecie jako gotowy skill w otwartym repozytorium moja-firma-handel na GitHubie, razem z danymi ćwiczeniowymi i wynikiem kontrolnym. Działa w Claude, Microsoft 365 Copilot, ChatGPT i Gemini. Jak z niego skorzystać.

Co zbudujesz

Agenta w aplikacji Microsoft 365 Copilot z instrukcjami i trzema plikami XLSX w wiedzy. Pytasz go o rozliczenie miesiąca, a on liczy w code interpreterze i oddaje tabelę z marżą i ROAS każdej kampanii, oznaczenia i rekomendację.

WejścieCo robi agentWynik
kampanie.xlsx — plan i koszt reklamybierze koszt reklamy i liczy ROASROAS każdej kampanii
zamowienia.xlsx — 1015 zamówieńsumuje przychód i koszty zamówień per kampaniarachunek kampanii przed zwrotami
zwroty.xlsx — 88 zwrotówłączy zwroty z zamówieniami po numerzerachunek po zwrotach
Wszystko razemporównuje ROAS z marżą, oznacza rozjazdytabela i rekomendacja do decyzji marketingu

Czego potrzebujesz

  • Licencji albo rozliczenia licznikowego. Copilot Chat jest w subskrypcji Microsoft 365. Agenci oparci na danych tenanta wymagają licencji Microsoft 365 Copilot albo włączonego pay-as-you-go w Copilot Studio; agenci rozliczani licznikowo są domyślnie wyłączeni i włącza ich administrator (wymagania). Dokumentacja nie mówi wprost, czy użytkownik bez licencji może korzystać z plików wgranych do agenta — ustalcie to z administratorem przed startem. Według cennika Microsoftu licencja Microsoft 365 Copilot kosztuje 30,00 USD za użytkownika miesięcznie przy płatności rocznej i wymaga kwalifikującego się planu Microsoft 365.
  • Przeglądarki albo Teams na komputerze. Agent Builder działa w aplikacji Microsoft 365 Copilot i w Teams (desktop i web), nie na telefonie.
  • Danych w XLSX: kampanie.xlsx, zamowienia.xlsx, zwroty.xlsx. Komplet z wersjami CSV: agent-hw-dane-cwiczeniowe.zip. CSV w tym przepisie nie użyjesz: nie ma go na liście typów wiedzy Agent Buildera. Pliki XLSX mogą mieć do 30 MB, a Excel działa najlepiej, gdy dane są w jednym arkuszu (wiedza agenta). Nasze pliki mają po jednym arkuszu, a największy, z ponad tysiącem zamówień, waży kilkadziesiąt kilobajtów.

Czego ten agent nie zrobi

— Marketplace zrobił ROAS dwadzieścia dwa! — A ile z tego zostało? (Tego panel reklamowy nie pokazuje. Pokazuje to, za co mu zapłaciliście.)

Agent nie wyłączy kampanii i nie przesunie budżetu, nawet gdy marża jest ujemna. Budżetem i wyłączaniem kampanii zarządza marketing; o kampanii, która nie zarabia, ale ma budować zasięg nowej kategorii, decyduje zarząd. Agent przygotowuje rachunek i propozycję, człowiek podpisuje decyzję.

Miejsce, w którym ślepa automatyzacja szkodzi: koszt reklamy. W danych ćwiczeniowych jest to jedna liczba w pliku, w firmie bywa to wartość z panelu, którą później koryguje faktura albo nota. Reguła „marża ujemna, wyłącz” uruchomiona na koszcie z panelu wyłączy kampanię, która po korekcie zarabia. Sprawdzicie to w kroku z rzeczywistością. Warunek brzegowy: jeśli koszt reklamy nie jest nigdzie zapisany per kampania i per miesiąc, zacznijcie od tego arkusza. Agent policzy dokładnie tyle, ile mu zapiszecie.

Krok 1. Sprawdź ustawienia z administratorem

Zapytaj administratora Microsoft 365 o trzy rzeczy: czy masz licencję Microsoft 365 Copilot albo włączone pay-as-you-go, czy w organizacji wolno udostępniać agentów i czy działa Restricted SharePoint Search (wtedy SharePoint nie będzie źródłem wiedzy, co w tym przepisie nie przeszkadza, bo wgrywamy pliki).

Krok 2. Utwórz agenta

Otwórz microsoft365.com/chat → lewy panel → „Create agent” → karta „Configure”. Wpisz:

  • Name: „Agent kampanii” (limit 30 znaków),
  • Description: „Rozlicza kampanie z marży po zwrotach i zestawia ją z ROAS. Nie wyłącza kampanii.” (limit 1000 znaków).

Zmiany zapisują się automatycznie. Na tym samym ekranie jest panel testowy.

Krok 3. Wpisz instrukcje

Wklej do pola „Instructions” (limit 8000 znaków):

ROLA
Jesteś agentem kampanii w sklepie, który sprzedaje w sklepie internetowym, na marketplace
i przez porównywarkę cen. Rozliczasz kampanie z marży, nie z przychodu.

DANE (pliki w wiedzy agenta)
- kampanie.xlsx: kampania_id, kanał, termin, koszt_reklamy_pln, rabat_proc.
- zamowienia.xlsx: nr_zamowienia, kampania_id (puste = bez kampanii), wartosc_netto_pln,
  koszt_towaru_pln, prowizja_kanalu_pln, oplata_platnosci_pln, koszt_wysylki_pln.
- zwroty.xlsx: nr_zamowienia, wartosc_zwrotu_netto_pln, koszt_towaru_wraca_pln,
  koszt_obslugi_zwrotu_pln.

JAK LICZYSZ (zawsze w code interpreterze, na całych plikach)
1. Połącz zwroty z zamówieniami po nr_zamowienia. Data zwrotu nie ma znaczenia.
2. Dla każdej kampanii i dla grupy „bez kampanii” policz: zamówienia, zwroty (szt.),
   przychód netto, zwroty netto, koszt towaru po zwrotach (koszt towaru − koszt towaru,
   który wrócił), prowizje, płatności, wysyłkę, obsługę zwrotów, koszt reklamy.
3. Marża = przychód netto − zwroty netto − koszt towaru po zwrotach − prowizje − płatności
   − wysyłka − obsługa zwrotów − koszt reklamy.
4. Marża % = marża / (przychód netto − zwroty netto).
5. ROAS = przychód netto / koszt reklamy. Tak liczy panel reklamowy, przed zwrotami.

OZNACZENIA
- „rekord przychodu, słaba marża”: ROAS wyższy niż mediana ROAS kampanii, marża % niższa niż 10%.
- „na minusie”: marża poniżej zera.
- „do wzmocnienia”: kampania z najwyższą marżą %.
Przy każdej oznaczonej kampanii wypisz dwie największe pozycje kosztu (bez kosztu towaru;
zwroty netto też są pozycją kosztu). Gdy zwroty netto przekraczają 10% przychodu netto, podaj
produkt (indeks), który wraca najczęściej, z liczbą zwrotów i zwróconą wartością.

REKOMENDACJA
Napisz, co proponujesz wzmocnić, co ograniczyć, a co sprawdzić. Każde zdanie poprzyj liczbą
z tabeli. Przy każdej propozycji wskaż, kto decyduje: marketing (budżet, wyłączenie kampanii)
czy zarząd (kampania bez marży utrzymywana dla zasięgu).

ZASADY
- Niczego nie wyłączasz i nie zmieniasz. Proponujesz.
- Nie zgadujesz. Jeśli brakuje kolumny albo pliku, napisz, czego brakuje.
- Przy każdej sumie podaj liczbę wierszy, z której powstała.

FORMAT
Tabela kampanii (wszystkie pozycje kosztu, marża, marża %, ROAS), lista oznaczeń,
rekomendacja w punktach, na końcu plik Excel z tabelą do pobrania.

Instrukcja jest długa, bo Agent Builder nie ma osobnego miejsca na reguły obliczeń. Jawne progi pozwalają marketingowi je zmienić bez proszenia nikogo o „lepszy prompt”.

Krok 4. Dodaj wiedzę jako wgrane pliki

W sekcji „Knowledge” wgraj z dysku trzy pliki XLSX. Nie podawaj linków do SharePoint ani OneDrive: code interpreter przetwarza tylko pliki wgrane do agenta albo dołączone do rozmowy, a plików znalezionych wyszukiwaniem nie dostaje. Agent zobaczy wtedy treść, ale nie policzy sum.

Sprawdź, czy obliczenia są włączone. Jedna strona dokumentacji mówi, że code interpreter jest w Agent Builderze zawsze włączony, inna wspomina przełącznik „Create documents, charts, and code”. Jeśli przełącznik jest widoczny, włącz go.

Krok 5. Dodaj podpowiedzi i przetestuj

W „Starter Prompts” dodaj trzy podpowiedzi dla zespołu: „Rozlicz kampanie z kwietnia 2026”, „Która kampania ma rekordowy przychód i słabą marżę?”, „Pokaż zwroty kampanii KMP-02 według produktu”.

W panelu testowym wybierz pierwszą. Powinieneś zobaczyć, że agent uruchamia kod, a potem oddaje tabelę, oznaczenia, rekomendację i link do pliku Excel. Pobierz plik od razu: pliki z code interpretera istnieją tylko w trakcie sesji. Microsoft wymienia jednak wśród znanych problemów błąd generowania plików przez agenta; jeśli linku nie ma, poproś o tabelę w treści odpowiedzi.

Sprawdź wynik na danych kontrolnych

Liczby policzyliśmy niezależnie z tych samych plików. Kwoty w złotych.

KampaniaZamówienia / zwrotyPrzychód nettoROASMarża po wszystkimMarża %
KMP-01 reklama w wyszukiwarce140 / 423 639,343,485 095,4622,2%
KMP-02 strefa promocji marketplace310 / 5079 133,6622,61827,931,3%
KMP-03 media społecznościowe60 / 49 718,781,87−275,68−3,0%
KMP-04 porównywarka cen95 / 530 741,507,504 504,6515,4%
KMP-05 newsletter70 / 38 197,9813,663 274,3941,9%
bez kampanii340 / 2272 941,94—21 729,1631,8%
Pozycja kosztuKMP-01KMP-02KMP-03KMP-04KMP-05bez kampanii
Zwroty netto686,1915 999,42389,431 543,92384,144 604,10
Koszt towaru po zwrotach9 955,0043 170,003 827,0019 150,003 547,0037 370,00
Prowizje0,0010 706,310,000,000,005 032,28
Płatności349,190,00143,53453,93120,95527,90
Wysyłka681,504 030,00362,50899,00217,503 282,50
Obsługa zwrotów72,00900,0072,0090,0054,00396,00
Reklama6 800,003 500,005 200,004 100,00600,000,00

Mediana ROAS pięciu kampanii to 7,50. Oznaczenia: KMP-02 „rekord przychodu, słaba marża” (najwyższy ROAS i najniższa dodatnia marża), KMP-03 „na minusie”, KMP-05 „do wzmocnienia”. Przy KMP-02 największe koszty poza towarem to zwroty i prowizje, a najczęściej wraca kosiarka elektryczna 40 cm (OGR-KOS-40). W rekomendacji agent powinien rozdzielić decyzje: ograniczenie albo zmianę warunków strefy promocji i wzmocnienie newslettera to sprawa marketingu, utrzymanie KMP-03 dla zasięgu — zarządu.

Jeśli ROAS się zgadza, a marża nie, agent najczęściej nie połączył zwrotów z zamówieniami. Jeśli nie zgadza się nic, sprawdź, czy w ogóle uruchomił kod.

Krok z rzeczywistością

W połowie maja przychodzi nota korygująca do faktury za reklamę w mediach społecznościowych: koszt kwietnia to 4 200 zł, nie 5 200 zł. Otwórz kampanie.xlsx, w wierszu KMP-03 zmień koszt_reklamy_pln z 5200 na 4200, zapisz, usuń stary plik z sekcji „Knowledge” i wgraj nowy. Potem w nowej rozmowie zadaj to samo pytanie.

Powinieneś zobaczyć dla KMP-03 marżę 724,32 zł (7,8%) i ROAS 2,31. Oznaczenie „na minusie” znika. KMP-03 nie dostaje też oznaczenia „rekord przychodu, słaba marża”, bo jej ROAS jest nadal poniżej mediany 7,50. Pozostałe kampanie się nie zmieniają. Rekomendacja dla KMP-03 też powinna się zmienić: kampania przestaje być kandydatem do ograniczenia.

Tysiąc złotych korekty zmienił werdykt. Dlatego decyzję o kampanii podejmuje się na koszcie z faktury, a agent ma dostawać plik, który zespół aktualizuje, a nie liczbę wpisaną raz w instrukcję.

Krok 6. Udostępnij i zdecyduj o automatyzacji

Nowy agent jest prywatny. Kliknij „Share” i nadaj rolę „Can chat” osobom z marketingu, a „Can edit” osobie odpowiedzialnej za instrukcje i pliki. Przełącznik „Org-wide sharing for chat access” daje dostęp całej organizacji, o ile administrator go nie ograniczył. Każdy odbiorca potrzebuje licencji obejmującej funkcje agenta, inaczej zobaczy błąd. Agenta można też zgłosić do katalogu organizacji; po zatwierdzeniu przez administratora trafia do sekcji „Built by your org” (udostępnianie agentów).

Agent Builder nie tworzy akcji ani wyzwalaczy. Jeśli rozliczenie ma ruszać samo po nowym eksporcie, użyjcie „Copy to Copilot Studio”; wyzwalacze zdarzeń są tylko tam i mogą wpływać na rozliczenie licencyjne. Według komunikatu Microsoftu z 13.10.2026 (znamy go z lustra Message Center, nie z dokumentacji) Agent Builder ma dostać zaplanowane prompty, działające tylko dla twórcy agenta, z wdrożeniem od końca października do końca listopada 2026. To zapowiedź: zanim na niej oprzecie proces, sprawdźcie, czy funkcja jest już u Was.

Typowe problemy

ObjawPrzyczynaCo zrobić
Nie da się dodać pliku CSVCSV nie ma na liście typów wiedzyużyj wersji XLSX z jednym arkuszem
Agent odpowiada ogólnikami i nie liczyplik jest podpięty z SharePoint, więc code interpreter go nie dostajewgraj XLSX do agenta albo dołącz plik w rozmowie
Plik Excel z wynikiem zniknąłpliki z code interpretera istnieją tylko w trakcie sesjipobieraj plik od razu po wygenerowaniu
Kolega widzi błąd po otwarciu agentabrak licencji obejmującej funkcje agentalicencja Microsoft 365 Copilot albo pay-as-you-go
Udostępnienie się nie udajewybrano grupę dystrybucyjnąwybierz grupę zabezpieczeń albo konkretne osoby
Brak opcji „uruchom przy nowym pliku”Agent Builder nie ma wyzwalaczy„Copy to Copilot Studio”

Co dalej

Na własnych danych potrzebujecie trzech tabel w XLSX, każda w jednym arkuszu z nagłówkami w pierwszym wierszu. Zamówienia z platformy sklepowej, marketplace albo integratora: numer, data, kanał, oznaczenie kampanii, wartość netto, prowizja, opłata za płatność, wysyłka, a z ERP koszt towaru. Zwroty: numer zamówienia, wartość, czy towar wrócił do sprzedaży, koszt obsługi. Kampanie: identyfikator i koszt reklamy z faktury za miesiąc.

Mierzcie to, co zmienia decyzje: po ilu dniach od końca miesiąca marketing zna marżę każdej kampanii, jaka część budżetu poszła na kampanie z marżą ujemną, ile kampanii zmieniło werdykt po korekcie kosztów. Liczba rozliczeń wygenerowanych przez agenta nic Wam nie powie. Na marżę wpływają też cena, asortyment i rynek, więc porównujcie miesiąc do miesiąca, a nie z obietnicami.

Ten sam agent w innych narzędziach:

Kartę agenta kampanii z granicą decyzji i miernikami opisujemy we wpisie o kampanii liczonej po marży, a promocji po prowizji.

Portret Krzysztofa Majchrzyckiego

O autorze

Krzysztof Majchrzycki jest architektem systemów i AI Business Partnerem. Od wielu lat łączy technologię z biznesem i zarządzaniem. Współtworzył firmy technologiczne i kierował polskim oddziałem międzynarodowej grupy. Dziś projektuje modele firm i inteligentne systemy operacyjne, które z nich wynikają. Ukończył Executive MBA i ma certyfikat Prosci® Certified Change Practitioner.

Kampania to dopiero pierwszy etap drogi do marży

Darmowy poradnik „Handel wielokanałowy jako jeden system” rozkłada dziesięć etapów od kliknięcia do rozliczonej marży i pokazuje, gdzie pracuje każdy z dwunastu agentów.

FAQ

Najczęstsze pytania

Gdzie trafiają pliki, które wgrywam do agenta?

Według dokumentacji Microsoftu pliki wgrane do agenta są przechowywane w domyślnej geografii Waszego tenanta, a prompty, odpowiedzi i dane z Microsoft Graph nie służą do trenowania modeli bazowych. Do rozliczenia kampanii i tak nie potrzebujecie danych osobowych klientów: wystarczą numery zamówień i kwoty.

Czy mogę zamiast wgrywać pliki wskazać arkusz na SharePoint?

Do samego wyszukiwania tak, do liczenia nie. Code interpreter przetwarza tylko pliki wgrane do agenta albo dołączone do rozmowy; plików znalezionych wyszukiwaniem w SharePoint nie dostaje. Agent, który ma sumować tysiąc wierszy, potrzebuje pliku wgranego.