From YAG Frontlines

For any given Amazon SERP there are hundreds of results and 3 - 15 sponsored products per page, and we found it sometimes annoying when we had MULTIPLE campaigns with the same product, not knowing when amazon was showing 1 vs the other.

sponsored garlic press

We wanted an easier way of knowing which exact adgroups or campaigns were being rendered.

1. Find your AdId

First run a search for your target keyword. In the SERP when looking at your ad: Right-Click your ad and “copy link address

The link for every ad starts with `amazon.com/gp/slredirect` which works like a normal redirect server. It tracks meta-data (in the form of string parameters) and then forwards customers along to the correct place.

Next: Paste this link address into any Query String Parser

(Here is an open source query string parser: https://codesandbox.io/s/parse-query-string-0erhu?file=/src/App.js)

If you use this parser, the results would look something like this:

parse query string

Behind the scenes, amazon is tracking the click by using the AdId and url, but also the position of where the ad was placed.

Once you have the adId, you can look inside the advertising source to find connecting ads.

2. Finding the Source

with the AdId from the front-end, the process to find which ad means going through all your campaigns/adgroups/ASINs and looking to see which is which.

Here are the steps:

  1. Visit https://advertising.amazon.com/cm/campaigns
  2. Click into the Ad Campaign you THINK is going to match
  3. Click into the Ad Group you THINK is going to match
  4. Filter "Active Status = Enabled"
  5. How hit `CTRL + Shift +J` or right-click “inspect” on your table of products

At this point you should be seeing the “source” of your advertising dashboard. The interesting part is that each row has an associated AdID.

What does this mean? Inside Amazon, an Ad is really a connection between:

  • Campaign
  • AdGroup
  • ASIN

3. Finding the AdIds

Now we want to search the page for relevant AdIds.

Below is some javascript which will look throughout the page for an AdId and return some other relevant information.

Open the console tab on the code inspector and paste in this code below which looks for all the elements with a rowID, filter for the asin, then results the Ad ID and the ASIN:

View on CodeSandbox

var matched = window.location.href.match(/campaigns\/(.+)\/ad-groups\/(.+)\//),
  campaignId = matched[1],
  adgroupId = matched[2];

var names = document
    .querySelectorAll("[data-e2e-id='aac-breadcrumbs']")[0]
    .innerText.split("\n"),
  campaign = names[1].split(": ")[1],
  adgroup = names[2].split(": ")[1];

console.table(
  Array.from(document.querySelectorAll("[data-udt-row-id]"))
    .filter(e => e.dataset.udtColumnId === "asin-cell")
    .map(e => {
      const AdId = e.dataset.udtRowId;
      const asin = e.innerText;
      return {
        asin,
        AdId,
        campaign,
        campaignId,
        adgroup,
        adgroupId
      };
    })
);

This should spit out a table of Ad ID, campaign names that look like this:

console table ads and asins

With this you should be armed to create your own spreadsheet.

Anytime you see your product in search you can right-click and get the AdId to lookup in your adId/campaign/adgroup spreadsheet!