IndexNow w Shoperze - szybkie indeksowanie w Bing za darmo
IndexNow w Shoperze da się wdrożyć za darmo, mimo że Shoper nie ma go wbudowanego ani w panelu, ani w App Store. Wystarczą trzy rzeczy: plik z kluczem wgrany w menedżerze plików, przekierowanie 301 z katalogu głównego sklepu i darmowy skrypt w Google Apps Script, który raz dziennie zgłasza zmienione produkty do Binga. Sprawdziliśmy to na działającym sklepie: Bing przyjął klucz po około minucie, a skrypt zgłosił 182 adresy z odpowiedzią 200.
Poniżej opisujemy całą metodę krok po kroku, z gotowym kodem do skopiowania. Nie potrzebujesz serwera, płatnej aplikacji ani dostępu programisty do Shopera. Całość zajmuje około 30 minut.
Co to jest IndexNow i co daje sklepowi
IndexNow to otwarty protokół, przez który strona sama powiadamia wyszukiwarki o nowym, zmienionym albo usuniętym adresie, zamiast czekać, aż robot go odwiedzi. Obsługują go m.in. Bing, Yandex, Seznam, Naver i Yep. Zgłoszenie wysłane do jednej z nich trafia automatycznie do pozostałych, bo wyszukiwarki w protokole wymieniają się adresami.
Dla sklepu najważniejszy jest Bing. Z jego indeksu korzysta Copilot, a w dużej części także ChatGPT, gdy szuka informacji w sieci. Jeśli zmienisz cenę, dodasz produkt albo wycofasz towar, IndexNow skraca czas, po którym ta zmiana może pojawić się w wynikach i w odpowiedziach AI. Efekty zgłoszeń widać w Bing Webmaster Tools, w raporcie IndexNow.
Google nie korzysta z IndexNow. Do Google adresy trafiają przez mapę witryny i Search Console, więc ta metoda niczego tam nie zmienia ani nie psuje.
Dlaczego w Shoperze IndexNow nie działa od ręki
Shopify, Wix i kilka innych platform mają IndexNow wbudowany, a WordPress dostaje go z wtyczką. W Shoperze takiej opcji nie ma, a w listopadzie 2026 roku nie było też aplikacji, która by ją dodawała. Ręczne wdrożenie trafia na dwie przeszkody:
- Plik z kluczem musi być dostępny w katalogu głównym sklepu, np.
twojsklep.pl/klucz.txt. Shoper nie pozwala wgrać tam pliku. - Menedżer plików Shopera zapisuje pliki w katalogu
/userdata/public/upload/. Według dokumentacji IndexNow klucz umieszczony w podkatalogu obejmuje tylko adresy z tego podkatalogu, a produkty i kategorie leżą poza nim.
Rozwiązaniem jest przekierowanie 301. Plik leży w katalogu, do którego Shoper go wgrywa, a adres w katalogu głównym przekierowuje do niego. Bing, sprawdzając klucz, podąża za przekierowaniem i uznaje plik za umieszczony w katalogu głównym. Ten sam sposób od dawna stosowano w Shopify, zanim IndexNow stał się tam funkcją wbudowaną.
Czego potrzebujesz do wdrożenia
| Element | Gdzie | Koszt |
|---|---|---|
| Dostęp administratora do panelu Shopera | panel sklepu | 0 zł |
| Klucz IndexNow | generator na stronie bing.com/indexnow/getstarted | 0 zł |
| Konto w Bing Webmaster Tools ze zweryfikowanym sklepem | bing.com/webmasters | 0 zł |
| Konto Google (np. Gmail sklepu) | script.google.com | 0 zł |
Konto w Bing Webmaster Tools nie jest potrzebne do samego zgłaszania, ale bez niego nie zobaczysz, czy adresy dochodzą. Sklep najszybciej dodasz do Binga, importując go z Google Search Console.
Krok 1. Wygeneruj klucz
Wejdź na stronę bing.com/indexnow/getstarted i w pierwszym kroku kliknij przycisk generowania klucza. Klucz to ciąg liter i cyfr, zwykle 32-znakowy, np. w formacie 3f9c2a7e1b8d4e60a5c7f2d9b4e1a8c3. Skopiuj go i zapisz, bo użyjesz go w trzech miejscach.
Klucz możesz też wygenerować sam. Dokumentacja IndexNow dopuszcza od 8 do 128 znaków: małe i wielkie litery, cyfry i myślniki. Nie używaj przykładu z tego artykułu, tylko własnego klucza.
Krok 2. Wgraj plik z kluczem do menedżera plików Shopera
- Na komputerze utwórz plik tekstowy o nazwie
TWOJ_KLUCZ.txt, czyli klucz z rozszerzeniem .txt. - W środku wpisz tylko klucz, bez spacji, bez nowej linii i bez innych znaków. Zapisz plik w kodowaniu UTF-8.
- W panelu Shopera przejdź do: Ustawienia, Zaawansowane, Zarządzanie plikami, Zarządzaj plikami.
- Kliknij Upload i wgraj plik.
- Otwórz w przeglądarce adres
https://twojsklep.pl/userdata/public/upload/TWOJ_KLUCZ.txt. Powinien wyświetlić się sam klucz.
Jeśli zamiast klucza widzisz błąd 404, sprawdź, czy plik nie trafił do podfolderu w menedżerze plików. Wtedy adres będzie zawierał nazwę tego folderu.
Krok 3. Dodaj przekierowanie 301 z katalogu głównego
- W panelu Shopera przejdź do: Ustawienia, Zaawansowane, Przekierowania i kliknij Dodaj.
- W polu adresu źródłowego wpisz
/TWOJ_KLUCZ.txt. - Jako typ przekierowania wybierz Adres URL.
- Jako adres docelowy wpisz
/userdata/public/upload/TWOJ_KLUCZ.txti zapisz. - Otwórz
https://twojsklep.pl/TWOJ_KLUCZ.txt. Przeglądarka powinna przenieść Cię do pliku i pokazać klucz.
Przekierowanie Shopera zwraca kod 301, czyli stałe przekierowanie. Więcej o tym, jak działa i kiedy go używać, piszemy w artykule o przekierowaniu 301. Na sklep ta zmiana nie wpływa: dotyczy jednego adresu pliku tekstowego, którego nikt poza wyszukiwarkami nie odwiedza.
Krok 4. Zgłoś pierwszy adres z przeglądarki
Najprostsze zgłoszenie nie wymaga żadnego narzędzia. Wklej do paska przeglądarki adres w takim formacie, podstawiając swoją domenę i klucz:
https://www.bing.com/indexnow?url=https://twojsklep.pl/&key=TWOJ_KLUCZ
Pusta strona oznacza, że zgłoszenie dotarło. Tak możesz zgłosić pojedynczy nowy produkt albo kategorię. Przy kilkudziesięciu zmianach tygodniowo ręczne wklejanie linków szybko się nudzi, dlatego w kolejnym kroku ustawiamy automat.
Wyszukiwarka odpowiada kodem HTTP. Przy zgłoszeniu z przeglądarki go nie zobaczysz, ale skrypt z kroku 5 zapisuje go w dzienniku:
| Kod | Znaczenie | Co zrobić |
|---|---|---|
| 200 | Zgłoszenie przyjęte, klucz zweryfikowany | Nic, działa |
| 202 | Zgłoszenie przyjęte, klucz czeka na weryfikację | Poczekać kilka minut i sprawdzić ponownie |
| 400 | Błędny format zgłoszenia | Sprawdzić adresy i treść zapytania |
| 403 | Klucz nieprawidłowy, np. Bing nie znalazł pliku | Sprawdzić kroki 2 i 3 |
| 422 | Adresy spoza domeny lub klucz niezgodny | Sprawdzić stałą HOST i adresy w mapie witryny |
| 429 | Za dużo zgłoszeń | Zgłaszać rzadziej, tylko zmienione adresy |
Kod 200 oznacza tylko, że wyszukiwarka przyjęła zgłoszenie. Nie gwarantuje, że strona trafi do indeksu. O tym nadal decyduje jakość treści, tak samo jak w Google.
Krok 5. Automatyczne zgłaszanie w Google Apps Script
Google Apps Script to darmowe narzędzie Google do uruchamiania skryptów na koncie Google. Nie wymaga serwera ani karty płatniczej, a codzienne uruchomienie mieści się z dużym zapasem w darmowych limitach. Poniższy skrypt raz dziennie czyta mapę witryny sklepu i zgłasza do IndexNow tylko adresy, które zmieniły się od poprzedniego uruchomienia. Działa to dlatego, że mapa witryny Shopera podaje przy każdym produkcie, kategorii, producencie, wpisie i stronie informacyjnej datę ostatniej zmiany (lastmod).
- Zaloguj się na konto Google, najlepiej firmowe konto sklepu, i wejdź na script.google.com.
- Kliknij Nowy projekt, nazwij go np. IndexNow sklep i usuń przykładowy kod.
- Wklej skrypt z ramki poniżej.
- Uzupełnij trzy stałe na początku: HOST (domena bez https), KEY (Twój klucz) i SITEMAP (adres mapy witryny).
- Zapisz projekt ikoną dyskietki.
/**
* IndexNow dla sklepu na Shoperze - Google Apps Script (darmowy)
* Raz dziennie czyta mapę witryny sklepu i zgłasza do IndexNow
* nowe oraz zmienione adresy (na podstawie daty lastmod).
* Uzupełnij trzy stałe poniżej.
*/
const HOST = 'TWOJSKLEP.pl';
const KEY = 'TWOJ_KLUCZ';
const SITEMAP = 'https://TWOJSKLEP.pl/console/integration/execute/name/GoogleSitemap';
const ENDPOINT = 'https://www.bing.com/indexnow';
const FIRST_RUN_DAYS = 30; // pierwsze uruchomienie: zmiany z ostatnich 30 dni
/** Uruchamiane codziennie: zgłasza adresy zmienione od ostatniego razu. */
function zglosZmiany() {
sprawdzUstawienia_();
const props = PropertiesService.getScriptProperties();
const last = props.getProperty('lastRun');
const since = last ? new Date(last) : new Date(Date.now() - FIRST_RUN_DAYS * 864e5);
const startedAt = new Date();
const urls = pobierzAdresy_(SITEMAP)
.filter(u => u.lastmod && u.lastmod > since)
.map(u => u.loc);
if (urls.length === 0) {
Logger.log('Brak nowych zmian od ' + since.toISOString());
} else {
wyslij_(urls);
}
props.setProperty('lastRun', startedAt.toISOString());
}
/** Uruchom raz ręcznie: zgłasza wszystkie adresy z mapy witryny. */
function zglosWszystko() {
sprawdzUstawienia_();
wyslij_(pobierzAdresy_(SITEMAP).map(u => u.loc));
}
/** Uruchom raz ręcznie: ustawia codzienne uruchamianie ok. 6:00. */
function ustawHarmonogram() {
ScriptApp.getProjectTriggers().forEach(t => ScriptApp.deleteTrigger(t));
ScriptApp.newTrigger('zglosZmiany').timeBased().everyDays(1).atHour(6).create();
}
function wyslij_(urls) {
for (let i = 0; i < urls.length; i += 10000) {
const paczka = urls.slice(i, i + 10000);
const res = UrlFetchApp.fetch(ENDPOINT, {
method: 'post',
contentType: 'application/json; charset=utf-8',
payload: JSON.stringify({ host: HOST, key: KEY, urlList: paczka }),
muteHttpExceptions: true
});
const kod = res.getResponseCode();
Logger.log('Wysłano ' + paczka.length + ' adresów, odpowiedź: ' + kod);
if (kod !== 200 && kod !== 202) {
throw new Error('IndexNow zwrócił ' + kod + ': ' + res.getContentText().slice(0, 300));
}
}
}
/** Czyta mapę witryny lub indeks map i zwraca listę {loc, lastmod}. */
function pobierzAdresy_(url) {
const xml = UrlFetchApp.fetch(url, { muteHttpExceptions: true }).getContentText();
const root = XmlService.parse(xml).getRootElement();
const ns = root.getNamespace();
if (root.getName() === 'sitemapindex') {
return root.getChildren('sitemap', ns)
.map(s => s.getChildText('loc', ns))
.reduce((all, loc) => all.concat(pobierzAdresy_(loc)), []);
}
return root.getChildren('url', ns).map(u => {
const lm = u.getChildText('lastmod', ns);
return { loc: u.getChildText('loc', ns), lastmod: lm ? new Date(lm) : null };
});
}
function sprawdzUstawienia_() {
if (KEY === 'TWOJ_KLUCZ' || HOST.indexOf('TWOJSKLEP') === 0 || SITEMAP.indexOf('TWOJSKLEP') > -1) {
throw new Error('Uzupełnij HOST, KEY i SITEMAP na początku skryptu.');
}
}
Adres mapy witryny znajdziesz w pliku robots.txt sklepu, czyli pod twojsklep.pl/robots.txt, w linii zaczynającej się od Sitemap. W sklepach na Shoperze zwykle ma postać podaną w skrypcie. Skrypt sam przechodzi przez wszystkie mapy cząstkowe: produkty, kategorie, producentów, wpisy i strony informacyjne.
Pierwsze uruchomienie
- Z listy funkcji nad kodem wybierz zglosWszystko i kliknij Uruchom.
- Google poprosi o uprawnienia. Wybierz swoje konto, kliknij Zaawansowane, a potem przejdź do projektu i zezwól. To standardowe ostrzeżenie dla każdego skryptu, który nie przeszedł weryfikacji Google. Skrypt potrzebuje tylko dostępu do zewnętrznych adresów i harmonogramu.
- W dzienniku wykonania powinien pojawić się wpis „Wysłano N adresów, odpowiedź: 200” albo 202.
- Następnie wybierz funkcję ustawHarmonogram i kliknij Uruchom. Od tej chwili funkcja zglosZmiany będzie uruchamiana codziennie około 6:00.
Harmonogram sprawdzisz w lewym menu edytora, w zakładce z regułami uruchamiania (w angielskiej wersji Triggers). Powinna tam być jedna reguła dla funkcji zglosZmiany. Projektu nie trzeba wdrażać przyciskiem Wdróż, bo działa w tle na Twoim koncie.
Jeśli w danym dniu nic się w sklepie nie zmieniło, skrypt zapisze w dzienniku „Brak nowych zmian” i niczego nie wyśle. Tak ma być. Ponowne zgłaszanie niezmienionych adresów nic nie daje, a przy dużej liczbie powtórzeń wyszukiwarka może uznać zgłoszenia za spam.
Jak sprawdzić, czy IndexNow działa w Bing Webmaster Tools
W Bing Webmaster Tools wybierz sklep i otwórz raport IndexNow. Po kilku minutach od pierwszego zgłoszenia zobaczysz liczbę zgłoszonych adresów, ich źródło i datę. Przy zgłoszeniach ze skryptu lub z przeglądarki źródło to Self. W tej samej zakładce Bing pokazuje błędy klucza, jeśli plik przestanie być dostępny.
Warto też co kilka tygodni porównać w raporcie Strony, ile adresów sklepu Bing ma w indeksie. Jeśli zgłaszasz produkty, a mimo to nie pojawiają się w indeksie, problem leży zwykle w treści albo w duplikatach, podobnie jak przy statusie strona zeskanowana, ale niezindeksowana w Google.
Wyniki wdrożenia w sklepie na Shoperze
Metodę przetestowaliśmy w listopadzie 2026 roku na działającym sklepie, z mapą witryny liczącą 182 adresy: 85 produktów, 20 kategorii, 8 producentów, 57 wpisów i 12 stron informacyjnych.
| Etap | Wynik |
|---|---|
| Pierwsze zgłoszenie po dodaniu pliku i przekierowania | Kod 202, klucz w trakcie weryfikacji |
| To samo zgłoszenie po około minucie | Kod 200, Bing zweryfikował klucz przez przekierowanie 301 |
| Kontrolne zgłoszenie z fałszywym kluczem | Kod 202 |
| Raport IndexNow w Bing Webmaster Tools | 2 zgłoszone adresy, źródło Self, bez błędów klucza |
| Pierwsze uruchomienie skryptu, zmiany z 30 dni | 13 adresów, kod 200 |
| Zgłoszenie całej mapy witryny | 182 adresy, kod 200 |
Najważniejsza obserwacja dotyczy kodu 202. Bing zwrócił go także dla klucza, którego nie było na serwerze. Sam kod 202 nie potwierdza więc, że wdrożenie działa. Dowodem jest dopiero kod 200 przy kolejnym zgłoszeniu albo wpis w raporcie IndexNow w Bing Webmaster Tools.
Wdrożenie nie zmieniło niczego w działaniu sklepu: strona główna i kategorie odpowiadały kodem 200 przed i po zmianach. Przy okazji przeglądu mapy witryny wyszedł jeden problem do poprawy: adres jednego produktu zawierał niewidoczny znak BOM, który trafił do niego z nazwy produktu. Takie znaki warto wyłapać, zanim zaczniesz masowo zgłaszać adresy.
Inne sposoby zgłaszania adresów z Shopera
| Sposób | Dla kogo | Wady |
|---|---|---|
| Link w przeglądarce | Pojedyncze zmiany, test wdrożenia | Ręczna praca przy każdym adresie |
| Google Apps Script | Większość sklepów na Shoperze | Raz dziennie, nie w momencie zmiany |
| Skrypt na własnym serwerze (cron) | Sklepy z serwerem lub VPS i programistą | Wymaga serwera i utrzymania |
| Integracja z API Shopera i webhookami | Duże sklepy z częstymi zmianami stanów i cen | Wymaga programisty i aplikacji w Shoperze |
Dla typowego sklepu na Shoperze Apps Script wystarcza. Zgłoszenie raz dziennie to i tak znacznie szybciej niż samodzielne odwiedziny robota, które przy mniejszych sklepach potrafią następować co kilka tygodni.
Czego IndexNow nie zrobi
- nie przyspieszy indeksowania w Google, bo Google nie korzysta z tego protokołu,
- nie gwarantuje, że produkt trafi do indeksu ani że będzie wysoko w wynikach,
- nie naprawi słabych opisów, duplikatów i stron bez treści,
- nie zastąpi mapy witryny, która nadal jest głównym źródłem adresów dla Google i Binga.
Dla widoczności sklepu w Google ważniejsze są opisy produktów, struktura kategorii i linkowanie wewnętrzne, o czym piszemy w artykule o pozycjonowaniu sklepu na Shoperze. Jeśli część stron chcesz wyłączyć z wyników, zobacz, jak ustawić noindex w Shoperze.
IndexNow w Shoperze - najczęstsze pytania
Czy Shoper obsługuje IndexNow?
Nie natywnie. W listopadzie 2026 roku Shoper nie miał IndexNow ani w ustawieniach, ani w App Store. Opisana metoda korzysta wyłącznie ze standardowych funkcji panelu: menedżera plików i przekierowań.
Czy to może zepsuć sklep?
Nie. Dodajesz jeden plik tekstowy i jedno przekierowanie dla adresu, którego nie odwiedzają Klienci. Aby wycofać zmiany, usuń przekierowanie i plik w panelu, a w Apps Script usuń regułę uruchamiania albo cały projekt.
Czy Google Apps Script jest płatny?
Nie. Działa na zwykłym, bezpłatnym koncie Google. Jedno uruchomienie dziennie i kilka zapytań do mapy witryny to ułamek darmowych limitów.
Czy trzeba zgłaszać adresy osobno do Binga i Yandexa?
Nie. Wyszukiwarki obsługujące IndexNow przekazują sobie zgłoszenia. Wystarczy wysłać je do jednej, np. do Binga.
Ile adresów można zgłosić naraz?
Do 10 000 w jednym zgłoszeniu. Skrypt dzieli dłuższe listy na paczki automatycznie.
Czy IndexNow pomaga w widoczności w ChatGPT i Copilot?
Pośrednio. Copilot i wyszukiwanie w ChatGPT korzystają z indeksu Binga, więc szybsze odświeżenie danych w Bingu oznacza aktualniejsze ceny i produkty w odpowiedziach. To, czy asystent poleci Twój sklep, zależy jednak od treści i wzmianek o marce. Jak to sprawdzić, opisujemy w poradniku o tym, jak sprawdzić widoczność strony w Google i AI.
Źródła
- Dokumentacja protokołu IndexNow, indexnow.org: format klucza, zasady umieszczania pliku, limity i kody odpowiedzi.
- Microsoft Bing, strona IndexNow Get Started (bing.com/indexnow/getstarted): generator klucza, lista platform z wbudowanym IndexNow.
- Test wdrożenia EMM8 na sklepie na Shoperze, listopad 2026: odpowiedzi API IndexNow, raport IndexNow w Bing Webmaster Tools, dziennik Google Apps Script.
Jeśli wolisz nie robić tego samodzielnie, wdrożymy IndexNow w Twoim sklepie na Shoperze: plik z kluczem, przekierowanie, skrypt z harmonogramem i sprawdzenie w Bing Webmaster Tools. Przy okazji przejrzymy mapę witryny pod kątem błędnych adresów. Pełną kontrolę techniczną sklepu robimy w ramach audytu SEO.
Skontaktuj się z nami
Chcesz IndexNow w swoim sklepie na Shoperze?
Podaj adres sklepu. Wdrożymy IndexNow bez ingerencji w działanie sklepu, ustawimy codzienne zgłaszanie zmian i sprawdzimy, czy Bing przyjmuje adresy.
Tel: 603 338 970
E-mail: kontakt@emm8.pl
Dlaczego warto zacząć z EMM8
- Łączymy pozycjonowanie, widoczność w AI i reklamę w jedną strategię, dzięki czemu cały budżet pracuje na ten sam cel: nowych Klientów.
- Od 2012 roku pomagamy firmom z różnych branż rosnąć w internecie, więc nie uczymy się na Państwa budżecie.
- Projekt prowadzi jedna osoba, która zna Państwa firmę, wyniki i cele, bez przekazywania sprawy między działami.
Zapytanie ofertowe
Wystarczy kilka zdań o firmie i potrzebach. Szczegóły doprecyzujemy na dalszym etapie.
