Skip to content

Set up Shelf Edge ​

The Shelf Edge reports fill once EdgeComet can tell your product pages and category pages apart. That takes a few custom extraction fields, such as product_name and listing_title, and one crawl evaluated with them.

On an online store, EdgeComet's automatic setup usually writes these fields in your first days. You act only when a report shows Reports for online stores. See What EdgeComet configures on its own.

Product Feed needs one more thing: the URL of your Merchant Center feed. See Add your Merchant Center feed.

The Reports for online stores page on E-commerce Overview, viewing an older custom crawl named Googlebot - 14d - Aug 21. On this page lists Products and listings earning Search impressions and AI visits, Crawl allocation against demand by page type, and Catalog Health issues across product and listing pages. Step 1, Product page rules, is Done: product_name, price, availability and sku are set. Step 2, Listing page rules, is Done: listing_title, items_on_page and result_count are set. Step 3, A crawl evaluated with them, is Waiting: the crawl you are viewing was evaluated before these rules existed, and the next crawl reads them. Buttons: Start a crawl and Open Custom Extractions

Before you start ​

The fields the reports read ​

The reports read catalog fields: custom extraction rules with fixed names, each reading one value from the rendered page. Names match in any letter case.

Product page fields ​

A page is a product page when product_name has a value plus at least one of price, availability or sku.

FieldWhat it readsWhat it is for
product_nameThe product headingMarks a product page (required)
priceThe price shown, as a numberMarks a product page; price checks against your feed and your Product markup
availabilityThe stock badge text, such as "In stock" or "Only 2 left"Marks a product page; availability tiers and stock checks
skuThe printed item codeMarks a product page
description_lengthThe length of the product descriptionThin description checks

Configuration > Custom extractions with the Product pages group of 15 rules. Each rule shows its name, an AI-written description, the selector it extracts with, the pages it matched in 7 days and its Track changes switch: product_name reads the product title heading, price reads the data-price-amount attribute next to the Add to Cart button, price_currency, was_price, sku reads the article number labelled Item no., the brand rule is muted, and availability reads the stock text such as "in stock: 5 pcs" or "Product discontinued". Each matched 77,254 pages except was_price with 52,246

Listing page fields ​

A page is a listing page when listing_title has a value plus at least one of items_on_page or result_count.

FieldWhat it readsWhat it is for
listing_titleThe category headingMarks a listing page (required)
items_on_pageThe number of product cards shown on the pageMarks a listing page; thin listing checks
result_countThe "N products" number in the toolbarMarks a listing page; listing size
pagination_presentWhether a pager showsThe Size unknown band on Listings and the Thin listings by result count check

The Category listing pages group of 5 rules in Configuration > Custom extractions. listing_title reads the category H1, such as "Freestanding bathtubs Villeroy-Boch", on 21,281 pages. result_count reads the "(N products)" toolbar text with a regular expression on 18,937 pages. items_on_page counts the product cards on 21,238 pages. pagination_present checks that a pager exists, on 113,821 pages. item_names, a list rule, has Track changes off

Listings counts a category on its own URL only, except in the facet table. See Listings are counted on their own URL.

EdgeComet keeps the fields working ​

EdgeComet checks the catalog fields every day. When a rule stops matching after a site release, EdgeComet re-tests it on real pages and repairs it.

Steps ​

  1. Open E-commerce > Overview. If the report shows Reports for online stores, check its three setup items: Product page rules, Listing page rules and A crawl evaluated with them. The two rule items show Done, Partial or Missing and name the fields that are set or missing. The third shows Waiting, Pending or Unavailable.

  2. If a rule item reads Partial or Missing, click Generate extraction rules. If the button reads Review proposed extractions or Open the running generation, a run is already open: open it and go to step 4. Configuration > Custom extractions opens with the AI window already holding this brief: "Author the catalogue fields the E-commerce reports read. On product pages: product_name (the product heading), price, availability (the stock badge) and sku. On category and search listing pages: listing_title, items_on_page (count of the visible product cards), result_count (the "N products" toolbar text) and pagination_present."

    The Add or refine extractions window. What should the agent do? holds the E-commerce brief, which names the eight catalog fields for product pages and for category and search listing pages. Below it, Example URLs (optional) and the Cancel and Run buttons

  3. Optionally, paste a product page URL and a category page URL into Example URLs, then click Run. On a site with no extraction rules yet, the window is named Generate custom extractions and the button reads Generate.

  4. When the run finishes, open Review proposed extractions. Each proposed field shows the pages it matched and real values from your pages. Accept or reject each field, then click Apply N rules -> live.

  5. Wait for the next crawl, or click Start a crawl on the report to open the Crawls manager. See Start a custom crawl.

To write a field by hand instead, add a rule in Configuration > Custom extractions with one of the names in The fields the reports read. The Generate extraction rules brief does not ask for description_length: add it by name for the thin description checks.

The reports fill from the next crawl ​

The reports read the fields a crawl was evaluated with. A field you save today applies from the next crawl and never fills an older one. It reads only pages rendered after you saved it, which means its counts grow over the following crawls as pages are rendered again. The Current crawl is rebuilt every day.

The setup page says: "Rules apply from the next crawl after they are saved."

Add your Merchant Center feed ​

Product Feed and the checks that compare pages with your feed need the URL of your Google Merchant Center feed:

  1. Open Configuration > Caching > Merchant Feed Re-cache and turn on Enable re-cache.
  2. Paste up to 10 Feed URLs, one per line, and click Save.

The feed must be an RSS 2.0 or Atom XML feed in Google's product data format, plain or gzipped. The feed URL can be on any host, such as your feed tool's server. The product links in it must be on your website's domains, and the website needs at least one domain.

EdgeComet fetches the feed every hour by default, and you can set it as often as every 5 minutes. For the fetch interval and the re-cache options, see Re-cache products when your Merchant Center feed changes.

What you should see ​

  • On Reports for online stores, Product page rules and Listing page rules read Done, such as "product_name, price, availability and sku are set."
  • After the next crawl is evaluated, Overview, Products and Listings show their cards in place of the setup page.
  • After the first feed fetch, E-commerce > Product Feed shows Items in the catalog and Fetch history.

If it does not work ​

"The crawl you are viewing (...) was evaluated before these rules existed. The next crawl reads them." ​

Cause: the crawl in the header predates your fields.

Fix: switch the header to Current, or wait for the next rebuild.

"Issues for {crawl} are still being calculated." ​

Cause: EdgeComet is still counting the crawl's issues.

Fix: none. The step clears on its own once the evaluation finishes.

"Product pages cannot be told apart" ​

The full text is "Product pages cannot be told apart: this site has no product_name rule, or no price, availability or SKU rule to confirm one."

Cause: the site has no product_name rule, or none of price, availability and sku. Listings shows "Listing pages cannot be told apart" when listing_title is missing, or both items_on_page and result_count are.

Fix: add the missing field, by name, or run Generate extraction rules.

"The {rule} rule this crawl was evaluated with no longer exists" ​

Cause: someone deleted or renamed a field after the crawl was evaluated.

Fix: restore the field with its exact name. The next crawl reads it.

Listings shows zero listings ​

Cause: your categories exist only on query-string URLs, such as ?cat=12. Listings counts a category on its own URL.

Check: remove the Listing URL form filter on the Listing pages tab to see the Parameter variant URLs.

Fix: none in the report. The Facet layer by parameter card and the Listing pages tab without the filter still list these category URLs.

A price check "could not run" ​

The reason reads "extraction rule 'price' stores whatever the page printed rather than a number, so it cannot be compared".

Cause: the price rule stores the text the page shows, not a number.

Fix: edit the price rule to store a number. The price checks against your feed and your Product markup run on the next crawl.

A feed check reads "this site has no product feed configured" ​

Cause: the full reason is "this site has no product feed configured, so its pages cannot be compared against one". No feed URL is on the Merchant Feed Re-cache rule, or the rule is off.

Fix: add your feed. See Add your Merchant Center feed.