Professor Prebid is an open source Chrome extension to allow easy debugging and troubleshooting on publisher websites using Prebid.js.
Simply visit the dedicated Chrome Store link and click on
Add to Chrome. Don’t forget to pin it so you can have one-click access.
Alternatively, if you want to compile it yourself and run locally, please clone Github’s repository and follow the instructions.
Professor Prebid will automatically detect if the page has one or more Prebid instances. It Prebid is found, the extension’s icon will display a badge like:
Click on the icon to start interaction.
This is the default view and allows you to quickly check all the adunit codes available to Prebid, along with the associated media types and bidders.
Each bidder entry is clickable, showing the associated input and bid response. You can easily copy a specific part of the JSON to the clipboard.
Finally, you can also spot who is the winning bidder and whether its ad was rendered.
This screen allows you to verify and compare all the bids placed via Prebid.js and their metadata including:
This view shows you the auction’s main milestones:
Professor Prebid renders different timeline views using the auction id as key. This can happen if the publisher has an auto-refresh or manages each adunit independently.
You will find here the main modules and their configuration:
This view displays the configuration and the outcome of the different id providers found on page.
This tab provides advanced troubleshooting tools:
Here’s an example of an overlay:
Note: This is a tool that does require some technical knowledge because it utilizes the Chrome Devtools.
When SSP user sync URL’s are requested on a Publisher site, they typically will initiate calls or redirect to other resources which will initiate or redirect to other resources, etc. When it comes to privacy compliance, it can be difficult to track down if all resources down the request chain are obeying all of the necessary privacy compliance rules. Are all of the correct query parameters being passed where they should be down the chain?
The goal of this tool doesn’t attempt to fix scenarios where compliance params might not be present, instead it is a tool designed to quickly show transparency around this. It is up to the SSP to be aware of how compliance params are being used and to act accordingly based on this.
Note: It is advised when testing User Sync URL’s that you clear cookies relative to the domain you are testing. This will ensure that results are in-line with an initial visit to the current page. Additionally, the first resource matching the root URL will be used to generate the initiator request chain.
Profressor Prebidpanel (top-right), then to the
Network Inspectortab in the submenu directly below.
Professor Prebid --> Network Inspector
The UI of the User Sync Network Inspector:
The Request Chain
Data for each resource on a request chain is taken from that resources HAR entry (For more info on HAR entries, see: http://www.softwareishard.com/blog/har-12-spec)
If a user sync root URL resource is loaded on a webpage, the final resulting request chain object will look like the following (the “redirectsTo” and “initiated” fields can contain zero to many nested resources as values):
redirectsTo means a resource explicitly redirected to another resource.
initiated means a resource imported/parsed anther resource (ex: a resource loaded another resource via an html
This tool will detect which Prebid.js build is currently running on a publisher page and then compare it against the latest Prebid.js build that has been released. In doing so, the following data will be displayed:
The version analyzer tool can be accessed 2 ways:
ADUNITStab (selected by default), click the
Versiontab below (displayed in the format:
Inspectand then click
Professor Prebidfrom the tab menu on the top-right of the Chrome Devtools window)
VERSIONfrom the menu below.
Please open an GitHub issue on github.com/prebid/professor-prebid/issues.
Please submit a GitHub issue on github.com/prebid/professor-prebid/issues providing as much details as possible: