Den 14. oktober 2026 meldte Search Engine Roundtable at Microsoft Bing tester én stor annonseenhet helt øverst på søkeresultatsiden (Search Engine Roundtable). I stedet for den vanlige bunken med tekstannonser står ett sponset resultat i en egen blokk med grå bakgrunn, et bilde, en handlingsknapp og de kjente elementene URL, tittel og annonsebeskrivelse.
Kildegrunnlaget er tynt, og det er verdt å være presis om det. Testen ble oppdaget av Khushal Bherwani, som publiserte et skjermbilde på X og skrev: “Bing tester en egen plassering for sponsede annonser øverst i SERP.” (Khushal Bherwani via Search Engine Roundtable, egen oversettelse). Microsoft har ikke publisert noen kunngjøring, lanseringsdato, liste over markeder eller klikkdata. Slike tester kan forsvinne uten noen gang å bli lansert.
For en WooCommerce-butikk er dette en grunn til å forberede seg, ikke til å få panikk. En større første annonse betyr flere piksler mellom den som søker og det første organiske resultatet, og det slår mest ut på kommersielle søk der annonsører byr. Det fornuftige svaret er det samme uansett om formatet lanseres eller ikke: mål Bing-CTR ordentlig, hold katalogen oppdatert i Bings indeks, gi Microsoft Shopping en ren feed, og sørg for at butikken svarer raskt når noen faktisk ruller forbi annonsen.
Denne guiden går gjennom hva testen viser, hvordan du måler effekten på ditt eget nettsted, og hvilke endringer i WordPress og WooCommerce som lønner seg i Bing-søk uansett hva Microsoft bestemmer.
Hva Bing tester øverst på resultatsiden
På en vanlig resultatside i Bing vises sponsede resultater som en gruppe tekstannonser eller som en produktkarusell. I den omtalte testen får én annonsør en egen plassering over alt annet. Ut fra skjermbildet Search Engine Roundtable beskriver, inneholder enheten:
- En grå bakgrunn som skiller den fra de organiske resultatene under.
- Et bilde ved siden av annonseteksten.
- En handlingsknapp, som ikke er en del av en vanlig tekstannonse.
- URL, tittel og annonsebeskrivelse, de samme elementene som en vanlig søkeannonse har.
Barry Schwartz, som skrev saken, påpekte også at enheten ser uvanlig nok ut til å kunne forveksles med noe annet. Det minner om at Bing kommer til å følge med på hvordan brukerne reagerer før noe bestemmes.
Det sakene ikke sier, er like viktig. Det finnes ingen publisert høyde i piksler, ingen informasjon om enheten vises på mobil, ingen uttalelse om hvordan den vinnende annonsøren velges, og ingen data om hvordan den endrer klikkene på resultatene under.
Skissen under viser bare det som er kjent: én sponset blokk plassert over de organiske resultatene.
Vanlig resultatside i Bing:
+----------------------------------------------+
| [Sponsede tekstannonser eller produktkarusell]|
+----------------------------------------------+
| [Organisk resultat #1] |
+----------------------------------------------+
| [Organisk resultat #2] |
+----------------------------------------------+
Omtalt test (oktober 2026):
+----------------------------------------------+
| [Én sponset enhet, grå bakgrunn] |
| bilde | tittel, URL, beskrivelse | CTA-knapp |
+----------------------------------------------+
| [Organisk resultat #1] |
+----------------------------------------------+
| [Organisk resultat #2] |
+----------------------------------------------+Hvordan en større toppannonse kan påvirke organisk CTR for en WooCommerce-butikk
Det er ikke publisert klikkdata fra denne testen, så enhver prosentandel du leser om effekten er en gjetning. Det som kan sies uten å gjette, er strukturelt.
- Generiske kommersielle søk har størst risiko. Annonser vises der annonsører byr. Brede søk som “espressomaskin” eller “terrengløpesko” trekker flest bud, så det er der en egen annonseplassering oftest ville dukket opp.
- Søk etter konkrete produkter og delenumre har mindre. Den som skriver inn en nøyaktig modell eller et delenummer, leter etter én vare og sjekker gjerne flere resultater. Slike søk trekker også færre annonsører.
- Gjennomsnittlig posisjon kan holde seg mens CTR faller. Hvis en side fortsatt rangerer først, men havner lenger ned på skjermen, endres ikke posisjonen i rapportene dine. Bare CTR på den posisjonen endres. Derfor viser ikke en rangeringsrapport alene effekten.
Den praktiske konklusjonen er å dele Bing-søkeordene dine i generiske kategoriord og konkrete produktord før du ser på dataene. Hvis testen når ditt marked, bør et CTR-fall vise seg først i den generiske gruppen.
Hvordan måle endringer i organisk Bing-CTR i Bing Webmaster Tools
Rapporten Search performance i Bing Webmaster Tools er riktig verktøy. Ifølge Bings dokumentasjon viser den klikk, visninger, gjennomsnittlig CTR og gjennomsnittlig posisjon for nettstedet ditt, per søkeord og per side, for opptil de siste seks månedene, og dataene kan eksporteres til CSV (Bing Webmaster Tools: Search performance).
Noen detaljer i dokumentasjonen avgjør hvordan du leser tallene:
- Visninger og klikk omfatter mer enn nettresultater. Siden 24. mars 2023 teller rapporten også trafikk fra Chat, News, Images, Videos og Knowledge Panel, noe som endret beregningen av gjennomsnittlig CTR. Filtrer på kilden Web når du sammenligner organisk CTR.
- Gjennomsnittlig posisjon finnes bare for Web og Chat. De andre kildene viser bare klikk, visninger og CTR.
- Det finnes ingen data bakover i tid. Innsamlingen starter når nettstedet legges til i Bing Webmaster Tools. En butikk som ikke er verifisert ennå, bør legge seg til nå, slik at det finnes et utgangspunkt før en layoutendring når markedet.
- Det finnes nedbrytning per posisjon. Klikker du på et søkeord, ser du sidene som ble vist for det, og klikker du på en side, ser du posisjonsvise tall for den kombinasjonen av søkeord og side.
En enkel metode for en WooCommerce-butikk:
- Eksporter søkeord og sider for siste hele måned som utgangspunkt.
- Merk hvert søkeord som generisk eller spesifikt (kategoriord mot modell, SKU eller delenummer).
- Sammenlign hver måned gjennomsnittlig CTR for søkeord der gjennomsnittlig posisjon har holdt seg i samme intervall.
- Faller CTR i den generiske gruppen mens posisjonen holder seg, er en layoutendring den sannsynlige årsaken. Faller begge gruppene, se etter et teknisk problem først.
Dette tar en time i måneden og erstatter spekulasjon med dine egne tall.
Hvordan følge Copilot-siteringer med rapporten AI Performance
Bing rapporterer også hvor ofte innholdet ditt siteres i KI-genererte svar. Rapporten AI Performance dekker Microsoft Copilot, KI-genererte sammendrag i Bing og utvalgte partnerintegrasjoner. Den viser totalt antall siteringer, siterte sider, gjennomsnittlig antall siterte sider per dag og grounding queries som KI-en brukte da den hentet innholdet ditt (Bing Webmaster Tools: AI Performance).
To begrensninger, med Bings egne ord, er viktige her. Rapporten måler bare synlige siteringer, ikke rangering eller betydning. Og trendene i den er observasjoner: Bing skriver at de ikke kan tilskrives en bestemt årsak, som én innholdsendring eller én modelloppdatering.
For en butikk er fanen med grounding queries den mest nyttige delen. Den viser hvilke formuleringer som førte KI-en til sidene dine, og peker ofte mot kjøpsguider, kompatibilitetstabeller og produktspesifikasjoner heller enn kategorioversikter. Det er et signal om hvilket innhold som fortjener mer detalj, ikke et løfte om mer trafikk.
Hvordan sette opp IndexNow i WordPress og WooCommerce
IndexNow er en åpen protokoll for å fortelle søkemotorer at en URL er lagt til, oppdatert eller slettet. Reglene som betyr noe for implementeringen, kommer rett fra protokolldokumentasjonen (IndexNow-dokumentasjon):
- Nøkkelen må være 8 til 128 tegn og kan bare inneholde a til z, A til Z, 0 til 9 og bindestreker.
- Én POST-forespørsel kan inneholde opptil 10 000 URL-er.
- Et HTTP 200-svar betyr bare at søkemotoren har mottatt URL-ene. Det er ingen garanti for gjennomsøking eller indeksering.
- Søkemotorer som tar i bruk IndexNow, forplikter seg til å dele innsendte URL-er med de andre deltakende søkemotorene.
Svarkodene forteller hva som gikk galt: 202 betyr at URL-en er mottatt og at nøkkelvalideringen venter, 400 betyr ugyldig format, 403 betyr at nøkkelen ikke ble funnet eller ikke stemmer med nøkkelfilen, 422 betyr at URL-ene ikke tilhører verten eller at nøkkelen ikke følger protokollens skjema, og 429 betyr for mange forespørsler.
Koden under samler endrede URL-er under en forespørsel og sender dem én gang ved avslutning. WooCommerce kan utløse woocommerce_update_product mer enn én gang per lagring, så samlingen hindrer doble innsendinger.
add_action('woocommerce_update_product', 'wppoland_queue_indexnow_product', 10, 1);
add_action('save_post_post', 'wppoland_queue_indexnow_post', 10, 1);
add_action('shutdown', 'wppoland_flush_indexnow_queue');
function wppoland_indexnow_queue(?string $url = null): array {
static $queue = [];
if ($url !== null) {
$queue[$url] = true;
}
return array_keys($queue);
}
function wppoland_queue_indexnow_product(int $product_id): void {
$product = wc_get_product($product_id);
if ($product && $product->get_status() === 'publish') {
wppoland_indexnow_queue($product->get_permalink());
}
}
function wppoland_queue_indexnow_post(int $post_id): void {
if (wp_is_post_revision($post_id) || wp_is_post_autosave($post_id) || get_post_status($post_id) !== 'publish') {
return;
}
wppoland_indexnow_queue(get_permalink($post_id));
}
function wppoland_flush_indexnow_queue(): void {
$urls = wppoland_indexnow_queue();
$key = defined('INDEXNOW_API_KEY') ? INDEXNOW_API_KEY : '';
if ($key === '' || $urls === []) {
return;
}
wp_remote_post('https://api.indexnow.org/indexnow', [
'timeout' => 5,
'blocking' => false, // ikke forsink forespoerselen i adminpanelet
'headers' => ['Content-Type' => 'application/json; charset=utf-8'],
'body' => wp_json_encode([
'host' => wp_parse_url(home_url(), PHP_URL_HOST),
'key' => $key,
'keyLocation' => home_url('/' . $key . '.txt'),
'urlList' => array_slice($urls, 0, 10000),
]),
]);
}Nøkkelfilen er en UTF-8-tekstfil oppkalt etter nøkkelen, som inneholder nøkkelen og ligger i rotmappen til verten (mappen som leverer https://ditt-domene/, vanligvis den med wp-config.php eller index.php). Dokumentasjonen anbefaler sterkt roten. Bruker du alternativet keyLocation med en fil i en undermappe, kan nøkkelen bare sende inn URL-er under samme sti: en nøkkel i /catalog/ kan ikke sende inn URL-er fra /help/.
Fordi blocking er satt til false, ser koden aldri svarkoden. Test nøkkelen én gang manuelt med curl og sjekk at du får 200 eller 202 før du stoler på hooken.
Hvordan lage en WooCommerce-produktfeed for Microsoft Merchant Center
For å vises i Microsoft Shopping-annonser, også i en eventuell ny toppplassering, går produktene gjennom en feed i Microsoft Merchant Center. Siden med produktattributter lister opp reglene (Microsoft Advertising: Product attributes). Disse skaper oftest problemer for WooCommerce-butikker:
- Prisen må stemme med landingssiden. Microsoft kontrollerer det og anbefaler å holde landingssiden oppdatert med strukturerte data. Avgiftshåndteringen avhenger av markedet: priser oppgis uten avgift for USA og med merverdiavgift for Storbritannia, med detaljer i feedens avgiftsregler.
- Beskrivelsen har ingen HTML og en grense på 10 000 tegn. Tittelen har en grense på 150 tegn og skal ikke inneholde reklametekst.
- Merket er produsenten. Microsoft skriver at butikknavnet ikke skal brukes som merke med mindre butikken produserer varen.
- GTIN er numerisk, opptil 14 sifre per verdi. Når et produkt verken har GTIN pluss merke eller MPN pluss merke, må nye produkter ha
identifier_existssatt til FALSE. - Shipping er bare påkrevd for Østerrike og Tyskland. I andre markeder er attributtet valgfritt.
- Egendefinerte etiketter
custom_label_0tilcustom_label_4tar opptil 100 tegn hver, med opptil 1000 unike verdier per etikett. - Gjennomgangen tar tid. En ny vare, eller en endring i tittel, beskrivelse, lenke eller bilde, kan bli liggende til gjennomgang i opptil tre virkedager. Pris- og lageroppdateringer kan ta opptil 24 timer å behandle.
- Robots.txt må tillate at Microsoft Advertising gjennomsøker nettstedet. Annonser kan ikke vises hvis gjennomsøkingen er ufullstendig.
Funksjonen under kobler et WooCommerce-produkt til disse attributtene. Den leser GTIN via get_global_unique_id(), som WooCommerce la til i versjon 9.1.0 (WooCommerce-kildekode), og merket fra taksonomien product_brand som WooCommerce-kjernen registrerer.
function wppoland_get_microsoft_merchant_item(WC_Product $product): array {
$brands = wp_get_post_terms($product->get_id(), 'product_brand', ['fields' => 'names']);
$brand = (!is_wp_error($brands) && $brands) ? $brands[0] : '';
$gtin = $product->get_global_unique_id(); // WooCommerce 9.1.0+
$item = [
'id' => $product->get_sku() ?: (string) $product->get_id(),
'title' => mb_substr($product->get_name(), 0, 150),
'description' => mb_substr(wp_strip_all_tags($product->get_description() ?: $product->get_short_description()), 0, 10000),
'link' => $product->get_permalink(),
'image_link' => wp_get_attachment_url($product->get_image_id()),
'availability' => $product->is_in_stock() ? 'in stock' : 'out of stock',
// maa vaere lik prisen som vises paa produktsiden for maalmarkedet
'price' => number_format((float) wc_get_price_to_display($product), 2, '.', '') . ' ' . get_woocommerce_currency(),
'condition' => 'new',
'custom_label_0' => (string) ($product->get_meta('_erp_margin_tier') ?: 'standard'),
];
if ($brand !== '') {
$item['brand'] = $brand;
}
if ($gtin !== '') {
$item['gtin'] = $gtin;
}
if ($brand === '' || $gtin === '') {
$item['identifier_exists'] = 'FALSE'; // bare spesialproduserte eller umerkede varer
}
return $item;
}wc_get_price_to_display() følger butikkens innstilling for visning av avgift, så feeden viser samme pris som produktsiden. Betjener én butikk markeder med ulike avgiftsregler, lag én feed per marked. Sett identifier_exists til FALSE bare for produkter som virkelig mangler produsentidentifikatorer; for merkevarer fyller du inn GTIN i stedet.
I større kataloger ligger lager- og marginsdata vanligvis i ERP-systemet. En WooCommerce ERP-integrasjon holder lagerstatus og egendefinerte etiketter i feeden i takt med lageret, og det betyr noe fordi en utdatert pris eller lagerstatus er nettopp det Microsofts gjennomgang sjekker.
Hvordan verifisere Bingbot og styre gjennomsøkingshastigheten
Hyppige IndexNow-innsendinger får Bingbot til å komme oftere tilbake til butikken. Før du gir crawlertrafikk særbehandling i serverreglene, sørg for at det virkelig er Bingbot. En user agent-streng er lett å forfalske.
Bings dokumenterte metode har to trinn (Bing Webmaster Tools: How to verify Bingbot):
- Gjør et omvendt DNS-oppslag på IP-adressen fra loggene dine og sjekk at navnet ender på
search.msn.com. - Gjør et vanlig DNS-oppslag på navnet og bekreft at det peker tilbake til samme IP-adresse.
# eksempel fra Bings dokumentasjon
host 157.55.39.1
# 157.55.39.1.in-addr.arpa domain name pointer msnbot-157-55-33-18.search.msn.com
host msnbot-157-55-33-18.search.msn.com
# msnbot-157-55-33-18.search.msn.com has address 157.55.39.1Bing fraråder å hardkode IP-adresser eller adresseområder. Hvis du matcher på IP i stedet for DNS, bruk listen Bing publiserer og oppdater den daglig, fordi Microsoft kan endre den når som helst. Det finnes også et offentlig verktøy, Verify Bingbot, i Bing Webmaster Tools.
Hvis gjennomsøkingen konkurrerer med kundene i travle timer, har Bing Webmaster Tools innstillingen Crawl control. Den lar deg sette Bingbots gjennomsøkingshastighet raskere eller tregere enn grunnnivået for hver av døgnets 24 timer, enten med en forhåndsinnstilling basert på de travleste timene dine eller med et eget mønster (Bing Webmaster Tools: Crawl control). En felle: et crawl-delay-direktiv i robots.txt har alltid forrang foran denne innstillingen, så fjern en gammel crawl-delay-linje hvis du vil at timemønsteret skal gjelde.
Før du kjøper mer serverkapasitet, sjekk om serveren i det hele tatt er problemet; kontrollene i en sikkerhetsrevisjon av WordPress finner ofte bottrafikk, trege plugins eller manglende hurtigbufring først.
Hvordan konfigurere Nginx FastCGI-hurtigbuffer for crawlere og kunder i WooCommerce
Den som ruller forbi en annonse og klikker på resultatet ditt, forventer at siden laster raskt. Googles web.dev-veiledning gir et grovt mål: en god Time to First Byte er 0,8 sekunder eller mindre, og en dårlig er over 1,8 sekunder (web.dev: Time to First Byte). TTFB er ikke et Core Web Vitals-mål, men en treg første byte forsinker alt etterpå, også Largest Contentful Paint.
Hurtigbufring av hele sider leverer sider fra bufferen til anonyme besøkende og crawlere. I WooCommerce må den aldri bufre handlekurven, kassen, kontosidene eller besøkende som har varer i handlekurven. Konfigurasjonen under viser strukturen; tilpass stiene til de lokaliserte slugene for handlekurv og kasse.
# http-blokk
fastcgi_cache_path /var/cache/nginx/wordpress levels=1:2 keys_zone=WORDPRESS:100m inactive=60m;
fastcgi_cache_key "$scheme$request_method$host$request_uri";
# server-blokk
set $skip_cache 0;
if ($request_method = POST) { set $skip_cache 1; }
if ($query_string != "") { set $skip_cache 1; }
if ($request_uri ~* "/(cart|checkout|my-account)/|/wp-admin/|/wp-json/|/xmlrpc.php") { set $skip_cache 1; }
if ($http_cookie ~* "wordpress_logged_in|woocommerce_items_in_cart|wp_woocommerce_session") { set $skip_cache 1; }
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_cache WORDPRESS;
fastcgi_cache_bypass $skip_cache;
fastcgi_no_cache $skip_cache;
fastcgi_cache_valid 200 301 60m;
fastcgi_cache_use_stale error timeout updating http_500;
add_header X-FastCGI-Cache $upstream_cache_status;
}Bingbot trenger ingen egen regel her: den kommer uten handlekurv-informasjonskapsler og får derfor bufrede sider som enhver anonym besøkende. To tiltak til hjelper i kataloger som endres ofte:
- Vedvarende objektbuffer (Redis eller Memcached). Produktdata og innstillinger blir liggende i minnet, så forespørsler uten sidebuffer kjører færre databasespørringer.
- Flytt ERP-synkroniseringen ut av forespørselsløpet. Kjør lager- og prisimport som bakgrunnsjobber (for eksempel med Action Scheduler, som følger med WooCommerce) i stedet for under sidelasting.
Når prisen på et produkt endres, tøm bufferen for produktsiden i samme steg som du legger IndexNow-innsendingen i kø. Ellers kan både Bingbot og Microsofts priskontroll se den gamle prisen.
Hvordan legge til strukturerte Product-data uten oppdiktede verdier
Microsofts feeddokumentasjon kobler strukturerte data på landingssiden til priskontrollen, og Bings KI-flater siterer sider de kan lese tydelig. Begge belønner markering som oppgir ekte produktdata, og begge skades av markering som ikke gjør det.
WooCommerce lager allerede strukturerte Product-data. Filteret under legger til merke, GTIN og utvalgte attributter bare når produktet faktisk har dem. Det fyller aldri et hull med en standardverdi, fordi en standardverdi som en effekt eller et materiale ville vært feil for hvert produkt som mangler den.
add_filter('woocommerce_structured_data_product', function (array $markup, WC_Product $product): array {
$brands = wp_get_post_terms($product->get_id(), 'product_brand', ['fields' => 'names']);
if (empty($markup['brand']) && !is_wp_error($brands) && $brands) {
$markup['brand'] = ['@type' => 'Brand', 'name' => $brands[0]];
}
$gtin = $product->get_global_unique_id();
if ($gtin !== '' && empty($markup['gtin'])) {
$markup['gtin'] = $gtin;
}
$properties = [];
foreach (['power' => 'Effekt', 'material' => 'Materiale'] as $slug => $label) {
$value = $product->get_attribute($slug);
if ($value !== '') {
$properties[] = ['@type' => 'PropertyValue', 'name' => $label, 'value' => $value];
}
}
if ($properties) {
$markup['additionalProperty'] = $properties;
}
return $markup;
}, 10, 2);Bytt ut power og material med attributtslugene katalogen din bruker. Poenget er mønsteret: de strukturerte dataene gjengir det produktsiden oppgir, og de samme verdiene går inn i Merchant Center-feeden, slik at siden, markeringen og feeden aldri motsier hverandre.
Tiltaksmatrise for WooCommerce-team
| Søketype | Hva som kan endre seg | Tiltak i WooCommerce | Tiltak i Microsoft Advertising |
|---|---|---|---|
| Generiske kategoriord | Det organiske resultatet havner lenger ned på skjermen hvis testen lanseres | Følg CTR ved stabil posisjon i Search performance; styrk kategorisider med ekte sammenligningsdata | Bestem om du skal by på disse ordene ut fra margin, ikke frykt |
| Søk etter modell, SKU og delenummer | Mindre effekt, færre annonsører | IndexNow ved produktoppdateringer, riktig GTIN og merke, fullstendig Product-markering | Shopping-kampanjer med rene identifikatorer |
| Bruks- og kompatibilitetsspørsmål | Svar kan bli sitert i Copilot eller Bing-sammendrag | Grundige guider; følg grounding queries i AI Performance | Vanligvis ikke behov for betalte tiltak |
| Riktig pris og lagerstatus | Feedvarer avvist eller holdt tilbake til gjennomgang | ERP-synkronisering som bakgrunnsjobber; tøm bufferen ved prisendring | Feedpris lik landingssiden; egendefinerte etiketter for margin og lager |
Rekkefølge for implementering i utviklingsteam
Testen kommer kanskje aldri ut av eksperimentfasen. Hvert steg under forbedrer likevel allerede i dag hvordan butikken gjør det i Bing.
- Verifiser nettstedet i Bing Webmaster Tools og eksporter et utgangspunkt.
- Uten utgangspunkt er det ingenting å sammenligne med, og Bing fyller ikke inn data bakover i tid.
- Slå på IndexNow.
- Lag en nøkkel, legg nøkkelfilen i roten, test den med curl, og aktiver deretter den samlede hooken.
- Rydd opp i feeden i Microsoft Merchant Center.
- Produsentmerke, ekte GTIN, pris lik produktsiden, og shipping for Østerrike og Tyskland hvis du selger dit.
- Beskytt ytelsen.
- Hurtigbufring av hele sider med unntak for WooCommerce, vedvarende objektbuffer, ERP-synkronisering utenfor forespørselsløpet og Crawl control hvis Bingbot konkurrerer med topptrafikken.
- Rett opp de strukturerte dataene.
- Fjern standardverdier fra Product-markeringen og hold den identisk med feeden.
- Gå gjennom tallene hver måned.
- Sammenlign CTR for generiske og spesifikke søkeord ved stabile posisjoner, og sjekk grounding queries i AI Performance.







