See what the clearing price is for ad inventory on any site that uses prebid.
This bookmarklet used the prebid browser API to pull up any prebid.js auction winners on the current page. Drag it to your bookmarks bar and give it a whirl.
Linkified
Minified
javascript:(function()%7Bjavascript%3A(function()%7B%0A%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20var%20bids%20%3D%20pbjs.getHighestCpmBids()%3B%0A%20%20%20%20%20%20%20%20var%20output%20%3D%20%5B%5D%3B%0A%20%20%20%20%20%20%20%20for%20(var%20i%20%3D%200%3B%20i%20%3C%20bids.length%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20var%20b%20%3D%20bids%5Bi%5D%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20output.push(%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'adunit'%3A%20b.adUnitCode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'adId'%3A%20b.adId%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'bidder'%3A%20b.bidder%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'time'%3A%20b.timeToRespond%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'cpm'%3A%20b.cpm%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'adomain'%3A%20b.adserverTargeting%20%3F%20b.adserverTargeting.hb_adomain%20%3A%20''%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'size'%3A%20b.adserverTargeting%20%3F%20b.adserverTargeting.hb_size%20%3A%20''%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'dsp'%3A%20b.adserverTargeting%20%3F%20b.adserverTargeting.hb_dsp%20%3A%20''%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D)%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20function%20copyToClipboard()%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20var%20text%20%3D%20''%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20(output.length)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%3D%20'Ad%20Unit%5CtAd%20ID%5CtBidder%5CtTime%20(ms)%5CtCPM%5CtAdomain%5CtSize%5CtDSP%5Cn'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20for%20(var%20i%20%3D%200%3B%20i%20%3C%20output.length%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20row%20%3D%20output%5Bi%5D%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%2B%3D%20(row.adunit%20%7C%7C%20'')%20%2B%20'%5Ct'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%2B%3D%20(row.adId%20%7C%7C%20'')%20%2B%20'%5Ct'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%2B%3D%20(row.bidder%20%7C%7C%20'')%20%2B%20'%5Ct'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%2B%3D%20(row.time%20%7C%7C%20'')%20%2B%20'%5Ct'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%2B%3D%20(row.cpm%20%7C%7C%20'0.00')%20%2B%20'%5Ct'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%2B%3D%20(row.adomain%20%7C%7C%20'')%20%2B%20'%5Ct'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%2B%3D%20(row.size%20%7C%7C%20'')%20%2B%20'%5Ct'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%2B%3D%20(row.dsp%20%7C%7C%20'')%20%2B%20'%5Cn'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%20%3D%20'No%20prebid%20winners%20found'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20(navigator.clipboard%20%26%26%20navigator.clipboard.writeText)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20navigator.clipboard.writeText(text).then(function()%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20btn%20%3D%20document.getElementById('copyBtn')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20(btn)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20btn.innerHTML%20%3D%20'%E2%9C%85'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20btn.style.background%20%3D%20'%2322aa22'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20setTimeout(function()%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20btn.innerHTML%20%3D%20'%F0%9F%93%8E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20btn.style.background%20%3D%20'%232d2d2d'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%201500)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20textarea%20%3D%20document.createElement('textarea')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20textarea.value%20%3D%20text%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.body.appendChild(textarea)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20textarea.select()%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.execCommand('copy')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20document.body.removeChild(textarea)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20btn%20%3D%20document.getElementById('copyBtn')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20(btn)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20btn.innerHTML%20%3D%20'%E2%9C%85'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20btn.style.background%20%3D%20'%2322aa22'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20setTimeout(function()%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20btn.innerHTML%20%3D%20'%F0%9F%93%8E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20btn.style.background%20%3D%20'%232d2d2d'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%201500)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20var%20popup%20%3D%20document.createElement('div')%3B%0A%20%20%20%20%20%20%20%20popup.style.cssText%20%3D%20'position%3Afixed%3Btop%3A10px%3Bleft%3A10px%3Bwidth%3Acalc(100vw%20-%2040px)%3Bmax-width%3A1400px%3Bmax-height%3A85vh%3Boverflow%3Ahidden%3Bbackground%3A%230d1117%3Bborder%3A2px%20solid%20%2330363d%3Bborder-radius%3A12px%3Bz-index%3A999999%3Bbox-shadow%3A0%204px%2012px%20rgba(0%2C0%2C0%2C0.4)%3Bfont-family%3Aui-monospace%2CSFMono-Regular%2C%22SF%20Mono%22%2CConsolas%2C%22Liberation%20Mono%22%2CMenlo%2Cmonospace%3B'%3B%0A%20%20%20%20%20%20%20%20var%20html%20%3D%20'%3Cdiv%20style%3D%22padding%3A6px%3Bbackground%3A%2321262d%3Bborder-bottom%3A1px%20solid%20%2330363d%3Bdisplay%3Aflex%3Bjustify-content%3Aspace-between%3Balign-items%3Acenter%3Bborder-radius%3A4px%204px%200%200%3B%22%3E'%3B%0A%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cstrong%20style%3D%22font-size%3A16px%3Bcolor%3A%23f0f6fc%3B%22%3EAndy%20the%20%3Ca%20href%20src%3D%22https%3A%2F%2Fadnode.net%22%3EAdNode%20Aardvark%20%3Cimg%20src%3D%22https%3A%2F%2Fadnode.net%2Fimages%2FandySmall.png%22%3E%3C%2Fimg%3E%3C%2Fa%3E%20is%20here%20to%20help.%20('%20%2B%20output.length%20%2B%20'%20found)%3C%2Fstrong%3E'%3B%0A%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cdiv%3E'%3B%0A%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cbutton%20id%3D%22copyBtn%22%20onclick%3D%22('%20%2B%20copyToClipboard.toString()%20%2B%20')()%22%20style%3D%22background%3A%232d2d2d%3Bcolor%3A%23f7f3e6%3Bborder%3Anone%3Bpadding%3A8px%3Bcursor%3Apointer%3Bborder-radius%3A4px%3Bmargin-right%3A8px%3Bfont-size%3A16px%3Bwidth%3A32px%3Bheight%3A32px%3Bdisplay%3Ainline-flex%3Balign-items%3Acenter%3Bjustify-content%3Acenter%3B%22%3E%F0%9F%93%8E%3C%2Fbutton%3E'%3B%0A%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cbutton%20onclick%3D%22this.parentElement.parentElement.parentElement.remove()%22%20style%3D%22background%3A%232d2d2d%3Bcolor%3A%23f7f3e6%3Bborder%3Anone%3Bpadding%3A8px%3Bcursor%3Apointer%3Bborder-radius%3A4px%3Bfont-size%3A16px%3Bwidth%3A32px%3Bheight%3A32px%3Bdisplay%3Ainline-flex%3Balign-items%3Acenter%3Bjustify-content%3Acenter%3B%22%3E%E2%9D%8C%3C%2Fbutton%3E'%3B%0A%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3C%2Fdiv%3E%3C%2Fdiv%3E'%3B%0A%20%20%20%20%20%20%20%20if%20(output.length)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cdiv%20style%3D%22padding%3A0px%3Boverflow%3Aauto%3Bmax-height%3Acalc(85vh%20-%2080px)%3B%22%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctable%20style%3D%22color%3A%23e6edf3%3Bdisplay%3Ablock%3Bwidth%3Amax-content%3Bmax-width%3A100%25%3Boverflow%3Aauto%3Bborder-collapse%3Aseparate%3Bborder-spacing%3A0%3Bfont-size%3A13px%3B%22%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cthead%3E%3Ctr%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cth%20style%3D%22color%3A%23f0f6fc%3Bfont-weight%3A600%3Bbackground-color%3A%2321262d%3Bborder-bottom%3A2px%20solid%20%2358a6ff%3Bpadding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bmin-width%3A200px%3Btext-align%3Aleft%3B%22%3EAd%20Unit%3C%2Fth%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cth%20style%3D%22color%3A%23f0f6fc%3Bfont-weight%3A600%3Bbackground-color%3A%2321262d%3Bborder-bottom%3A2px%20solid%20%2358a6ff%3Bpadding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bmin-width%3A140px%3Btext-align%3Aleft%3B%22%3EAd%20ID%3C%2Fth%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cth%20style%3D%22color%3A%23f0f6fc%3Bfont-weight%3A600%3Bbackground-color%3A%2321262d%3Bborder-bottom%3A2px%20solid%20%2358a6ff%3Bpadding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bmin-width%3A100px%3Btext-align%3Aleft%3B%22%3EBidder%3C%2Fth%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cth%20style%3D%22color%3A%23f0f6fc%3Bfont-weight%3A600%3Bbackground-color%3A%2321262d%3Bborder-bottom%3A2px%20solid%20%2358a6ff%3Bpadding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bmin-width%3A80px%3Btext-align%3Aleft%3B%22%3ETime%20(ms)%3C%2Fth%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cth%20style%3D%22color%3A%23f0f6fc%3Bfont-weight%3A600%3Bbackground-color%3A%2321262d%3Bborder-bottom%3A2px%20solid%20%2358a6ff%3Bpadding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bmin-width%3A80px%3Btext-align%3Aleft%3B%22%3ECPM%3C%2Fth%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cth%20style%3D%22color%3A%23f0f6fc%3Bfont-weight%3A600%3Bbackground-color%3A%2321262d%3Bborder-bottom%3A2px%20solid%20%2358a6ff%3Bpadding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bmin-width%3A150px%3Btext-align%3Aleft%3B%22%3EAdomain%3C%2Fth%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cth%20style%3D%22color%3A%23f0f6fc%3Bfont-weight%3A600%3Bbackground-color%3A%2321262d%3Bborder-bottom%3A2px%20solid%20%2358a6ff%3Bpadding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bmin-width%3A80px%3Btext-align%3Aleft%3B%22%3ESize%3C%2Fth%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cth%20style%3D%22color%3A%23f0f6fc%3Bfont-weight%3A600%3Bbackground-color%3A%2321262d%3Bborder-bottom%3A2px%20solid%20%2358a6ff%3Bpadding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bmin-width%3A100px%3Btext-align%3Aleft%3B%22%3EDSP%3C%2Fth%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3C%2Ftr%3E%3C%2Fthead%3E%3Ctbody%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20(var%20j%20%3D%200%3B%20j%20%3C%20output.length%3B%20j%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20row%20%3D%20output%5Bj%5D%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20isLastRow%20%3D%20j%20%3D%3D%3D%20output.length%20-%201%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20bgColor%20%3D%20(j%20%25%202%20%3D%3D%3D%200)%20%3F%20'%230d1117'%20%3A%20'%23161b22'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctr%20style%3D%22background-color%3A'%20%2B%20bgColor%20%2B%20'%3Bborder-top%3A1px%20solid%20%2321262d%3B%22%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctd%20style%3D%22padding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bword-break%3Abreak-word%3B'%20%2B%20(isLastRow%20%3F%20'border-bottom-left-radius%3A0px%3B'%20%3A%20'')%20%2B%20'%22%3E'%20%2B%20(row.adunit%20%7C%7C%20'')%20%2B%20'%3C%2Ftd%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctd%20style%3D%22padding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bfont-family%3Aui-monospace%2CSFMono-Regular%2Cmonospace%3Bfont-size%3A11px%3Bword-break%3Abreak-all%3B%22%3E'%20%2B%20(row.adId%20%7C%7C%20'')%20%2B%20'%3C%2Ftd%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctd%20style%3D%22padding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3B%22%3E'%20%2B%20(row.bidder%20%7C%7C%20'')%20%2B%20'%3C%2Ftd%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctd%20style%3D%22padding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Btext-align%3Aright%3B%22%3E'%20%2B%20(row.time%20%7C%7C%20'')%20%2B%20'%3C%2Ftd%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctd%20style%3D%22padding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Btext-align%3Aright%3Bfont-weight%3Abold%3Bcolor%3A%237dd3fc%3B%22%3E%24'%20%2B%20(row.cpm%20%7C%7C%20'0.00')%20%2B%20'%3C%2Ftd%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctd%20style%3D%22padding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Bword-break%3Abreak-word%3B%22%3E'%20%2B%20(row.adomain%20%7C%7C%20'')%20%2B%20'%3C%2Ftd%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctd%20style%3D%22padding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3Btext-align%3Acenter%3B%22%3E'%20%2B%20(row.size%20%7C%7C%20'')%20%2B%20'%3C%2Ftd%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Ctd%20style%3D%22padding%3A8px%2013px%3Bborder%3A1px%20solid%20%2330363d%3B'%20%2B%20(isLastRow%20%3F%20'border-bottom-right-radius%3A0px%3B'%20%3A%20'')%20%2B%20'%22%3E'%20%2B%20(row.dsp%20%7C%7C%20'')%20%2B%20'%3C%2Ftd%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3C%2Ftr%3E'%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E'%3B%0A%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20html%20%2B%3D%20'%3Cdiv%20style%3D%22padding%3A40px%3Bcolor%3A%23f85149%3Btext-align%3Acenter%3Bfont-size%3A16px%3B%22%3E%3Cstrong%3ENo%20prebid%20winners%20found%3C%2Fstrong%3E%3C%2Fdiv%3E'%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20popup.innerHTML%20%3D%20html%3B%0A%20%20%20%20%20%20%20%20document.body.appendChild(popup)%3B%0A%20%20%20%20%7D%20catch(e)%20%7B%0A%20%20%20%20%20%20%20%20alert('Error%3A%20'%20%2B%20e.message%20%2B%20'%5Cn%5CnMake%20sure%20prebid.js%20is%20loaded%20on%20this%20page.')%3B%0A%20%20%20%20%7D%0A%7D)()%3B%7D)()%3B
Enbiggened
javascript:(function(){
try {
var bids = pbjs.getHighestCpmBids();
var output = [];
for (var i = 0; i < bids.length; i++) {
var b = bids[i];
output.push({
'adunit': b.adUnitCode,
'adId': b.adId,
'bidder': b.bidder,
'time': b.timeToRespond,
'cpm': b.cpm,
'adomain': b.adserverTargeting ? b.adserverTargeting.hb_adomain : '',
'size': b.adserverTargeting ? b.adserverTargeting.hb_size : '',
'dsp': b.adserverTargeting ? b.adserverTargeting.hb_dsp : ''
});
}
function copyToClipboard() {
var text = '';
if (output.length) {
text = 'Ad Unit\tAd ID\tBidder\tTime (ms)\tCPM\tAdomain\tSize\tDSP\n';
for (var i = 0; i < output.length; i++) {
var row = output[i];
text += (row.adunit || '') + '\t';
text += (row.adId || '') + '\t';
text += (row.bidder || '') + '\t';
text += (row.time || '') + '\t';
text += (row.cpm || '0.00') + '\t';
text += (row.adomain || '') + '\t';
text += (row.size || '') + '\t';
text += (row.dsp || '') + '\n';
}
} else {
text = 'No prebid winners found';
}
if (navigator.clipboard && navigator.clipboard.writeText) {
navigator.clipboard.writeText(text).then(function() {
var btn = document.getElementById('copyBtn');
if (btn) {
btn.innerHTML = '✅';
btn.style.background = '#22aa22';
setTimeout(function() {
btn.innerHTML = '📎';
btn.style.background = '#2d2d2d';
}, 1500);
}
});
} else {
var textarea = document.createElement('textarea');
textarea.value = text;
document.body.appendChild(textarea);
textarea.select();
document.execCommand('copy');
document.body.removeChild(textarea);
var btn = document.getElementById('copyBtn');
if (btn) {
btn.innerHTML = '✅';
btn.style.background = '#22aa22';
setTimeout(function() {
btn.innerHTML = '📎';
btn.style.background = '#2d2d2d';
}, 1500);
}
}
}
var popup = document.createElement('div');
popup.style.cssText = 'position:fixed;top:10px;left:10px;width:calc(100vw - 40px);max-width:1400px;max-height:85vh;overflow:hidden;background:#0d1117;border:2px solid #30363d;border-radius:12px;z-index:999999;box-shadow:0 4px 12px rgba(0,0,0,0.4);font-family:ui-monospace,SFMono-Regular,"SF Mono",Consolas,"Liberation Mono",Menlo,monospace;';
var html = '<div style="padding:6px;background:#21262d;border-bottom:1px solid #30363d;display:flex;justify-content:space-between;align-items:center;border-radius:4px 4px 0 0;">';
html += '<strong style="font-size:16px;color:#f0f6fc;">Andy the <a href src="https://adnode.net">AdNode Aardvark <img src="https://adnode.net/images/andySmall.png"></img></a> is here to help. (' + output.length + ' found)</strong>';
html += '<div>';
html += '<button id="copyBtn" onclick="(' + copyToClipboard.toString() + ')()" style="background:#2d2d2d;color:#f7f3e6;border:none;padding:8px;cursor:pointer;border-radius:4px;margin-right:8px;font-size:16px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;">📎</button>';
html += '<button onclick="this.parentElement.parentElement.parentElement.remove()" style="background:#2d2d2d;color:#f7f3e6;border:none;padding:8px;cursor:pointer;border-radius:4px;font-size:16px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;">❌</button>';
html += '</div></div>';
if (output.length) {
html += '<div style="padding:0px;overflow:auto;max-height:calc(85vh - 80px);">';
html += '<table style="color:#e6edf3;display:block;width:max-content;max-width:100%;overflow:auto;border-collapse:separate;border-spacing:0;font-size:13px;">';
html += '<thead><tr>';
html += '<th style="color:#f0f6fc;font-weight:600;background-color:#21262d;border-bottom:2px solid #58a6ff;padding:8px 13px;border:1px solid #30363d;min-width:200px;text-align:left;">Ad Unit</th>';
html += '<th style="color:#f0f6fc;font-weight:600;background-color:#21262d;border-bottom:2px solid #58a6ff;padding:8px 13px;border:1px solid #30363d;min-width:140px;text-align:left;">Ad ID</th>';
html += '<th style="color:#f0f6fc;font-weight:600;background-color:#21262d;border-bottom:2px solid #58a6ff;padding:8px 13px;border:1px solid #30363d;min-width:100px;text-align:left;">Bidder</th>';
html += '<th style="color:#f0f6fc;font-weight:600;background-color:#21262d;border-bottom:2px solid #58a6ff;padding:8px 13px;border:1px solid #30363d;min-width:80px;text-align:left;">Time (ms)</th>';
html += '<th style="color:#f0f6fc;font-weight:600;background-color:#21262d;border-bottom:2px solid #58a6ff;padding:8px 13px;border:1px solid #30363d;min-width:80px;text-align:left;">CPM</th>';
html += '<th style="color:#f0f6fc;font-weight:600;background-color:#21262d;border-bottom:2px solid #58a6ff;padding:8px 13px;border:1px solid #30363d;min-width:150px;text-align:left;">Adomain</th>';
html += '<th style="color:#f0f6fc;font-weight:600;background-color:#21262d;border-bottom:2px solid #58a6ff;padding:8px 13px;border:1px solid #30363d;min-width:80px;text-align:left;">Size</th>';
html += '<th style="color:#f0f6fc;font-weight:600;background-color:#21262d;border-bottom:2px solid #58a6ff;padding:8px 13px;border:1px solid #30363d;min-width:100px;text-align:left;">DSP</th>';
html += '</tr></thead><tbody>';
for (var j = 0; j < output.length; j++) {
var row = output[j];
var isLastRow = j === output.length - 1;
var bgColor = (j % 2 === 0) ? '#0d1117' : '#161b22';
html += '<tr style="background-color:' + bgColor + ';border-top:1px solid #21262d;">';
html += '<td style="padding:8px 13px;border:1px solid #30363d;word-break:break-word;' + (isLastRow ? 'border-bottom-left-radius:0px;' : '') + '">' + (row.adunit || '') + '</td>';
html += '<td style="padding:8px 13px;border:1px solid #30363d;font-family:ui-monospace,SFMono-Regular,monospace;font-size:11px;word-break:break-all;">' + (row.adId || '') + '</td>';
html += '<td style="padding:8px 13px;border:1px solid #30363d;">' + (row.bidder || '') + '</td>';
html += '<td style="padding:8px 13px;border:1px solid #30363d;text-align:right;">' + (row.time || '') + '</td>';
html += '<td style="padding:8px 13px;border:1px solid #30363d;text-align:right;font-weight:bold;color:#7dd3fc;">$' + (row.cpm || '0.00') + '</td>';
html += '<td style="padding:8px 13px;border:1px solid #30363d;word-break:break-word;">' + (row.adomain || '') + '</td>';
html += '<td style="padding:8px 13px;border:1px solid #30363d;text-align:center;">' + (row.size || '') + '</td>';
html += '<td style="padding:8px 13px;border:1px solid #30363d;' + (isLastRow ? 'border-bottom-right-radius:0px;' : '') + '">' + (row.dsp || '') + '</td>';
html += '</tr>';
}
html += '</tbody></table></div>';
} else {
html += '<div style="padding:40px;color:#f85149;text-align:center;font-size:16px;"><strong>No prebid winners found</strong></div>';
}
popup.innerHTML = html;
document.body.appendChild(popup);
} catch(e) {
alert('Error: ' + e.message + '\n\nMake sure prebid.js is loaded on this page.');
}
})();