Skip to main content

Amazon Listing Preview Toolv1.0.0

Renders one row of an Amazon flat file as the product page it will become, with every value naming the spreadsheet cell it came from. Titles, bullets, highlights, and backend search terms are measured against their own caps, including the 1,000 bytes Amazon indexes across all bullets combined rather than per bullet. Prohibited symbols, all capital text, and any word used more than twice are flagged.

Contacts an external service

This tool needs the network to work and can contact cdn.jsdelivr.net, docs.google.com and unpkg.com. Those services have their own privacy policies.

E-commerce
Product Listings
Marketplace Compliance
Loading the tool
Reference

Documentation

Download a sample flat file to try the tool with before pointing it at a catalogue of your own. It holds 14 invented listings across five variation families, with the images hosted here so every picture loads.

Download Example Files (ZIP)

Open amazon-listing-example.xlsx first. It uses the column names Amazon writes today, Parentage Level and Variation Theme Name among them. The README covers the other file in the zip.

Four listings are clean. The rest carry a deliberate fault, so the issue list has something to report the moment the sheet loads: a missing main image, a variation family with a hole in it, a title breaking eight rules at once, bullets running past the 1,000 bytes Amazon indexes, a Google Drive share link where an image URL belongs, and a Windows file path pasted into the same column. The README lists which SKU carries what.

Every row is invented. Apple and Nike are real companies; these products, SKUs, ASINs, barcodes, and prices are not theirs and are not real, and the photographs are flat colour cards stamped SAMPLE IMAGE. Nothing here came from either company or from Amazon. The brand names appear for reference only, and are not an endorsement by, nor do they imply any affiliation with, Apple, Nike, or Amazon.

Load a spreadsheet, pick a SKU, and the row is drawn as a shopper would see it, with the listing rules run against the copy as it stands. What follows covers loading a sheet, moving through the catalogue, cutting it down to the rows you are actually reviewing, what each part of the preview reports, and how problems are collected.

Open and watch keeps a handle on the file, looks at it every two seconds, and reloads it whenever the saved copy has changed, holding your place on the current SKU. That is the one to use while you are editing. It is a check on a timer rather than a message from the operating system, so two things are worth knowing. A file is unreadable for a moment in the middle of a save and one failed look means nothing, but five in a row means the file has gone rather than gone busy, whether renamed, moved, deleted, or closed to this page; watching then stops, the status line says so and stamps the time, and Open and watch is there to pick the file up again. And a browser throttles timers in a tab it considers hidden, so a window minimised or completely covered by Excel can drop from two seconds to about a minute between looks; the Reload button forces one immediately. One time import takes a snapshot; later edits need another import or the Reload button. Watching needs browser support for file handles, currently Chrome and Edge, so elsewhere only the import box and Reload appear. Both accept .xlsx, .xlsm, .xls, and .csv, and both read the first worksheet.

Google Sheet link or ID is the same live arrangement with nothing to upload. Paste the address from the browser bar, or just the id out of the middle of it, and the sheet is read directly and re-read every fifteen seconds; the tab you copied the link from is the tab you preview. It asks for no file handle, so unlike Open and watch it works in Firefox and Safari as well as Chrome and Edge. The sheet has to be shared as Anyone with the link can view, because the tool signs in to nothing and a sheet left private returns nothing a browser is allowed to read. A Publish to web address carries a different id and will not work, so use the ordinary one. The link is remembered and reopens by itself after a refresh, with no permission to grant. One point of care: Google returns the sheet's data range rather than the whole grid, and cell addresses are counted from the first row of what comes back. Where the header is the first row, which is how catalogue exports come, the addresses are exact; where a sheet keeps blank rows above its header, check the header row named in the status line before acting on an address. Reports taken from a Google Sheet say the same thing in their header.

Neither the file nor your place in it is lost to a refresh. A Reopen button names the file you had open, and one click restores access; where the browser already grants this site standing access it reopens by itself. The picker returns to the folder that file came from. The SKU you were viewing is saved as you move and restored as soon as a sheet carrying it loads, however it was loaded. The one time import box cannot be pointed at a folder, because no browser exposes that.

None of it reaches a server. The spreadsheet is parsed by the browser itself and never uploaded; a Google Sheet is fetched by the browser directly from Google, and every image directly from wherever its URL points, so nothing you load, type, or draft is stored anywhere but this browser. What the tool remembers between visits, the settings, the draft edits, the remembered file and link, and the SKU you were on, lives in this browser's own storage, and the Reset button clears the lot.

The header row is the fullest of the first twenty five rows. Headers are matched against known names: Item Name, Product Title, Bullet Point 1 to 10, Item highlights, Description, Brand, Variation Theme Name, Size, Style, Color, MAP, MSRP, Currency, UPC, External Product ID, Main image, Image 01 to 09, and the underscored flat file spellings such as main_image_url and other_image_url1. Columns Amazon has renamed are matched under both spellings, so Variation Theme Name also answers to Variation Theme and Parentage Level to Parentage, and a sheet exported before the rename maps exactly as one exported after it. A sheet whose images start at Image 01 with no main image column has the first promoted to the main slot. Every attribute an Amazon variation theme can switch on is matched too, Diameter, Item Shape, Number of Items, Set Name, Collection Item, Occasion Type, Pattern Name, Item Package Quantity, Flavor, Scent, Team Name, Edition, Configuration, Unit Count, Width Range, and Item Form among them, each under both the spaced and the underscored spelling. Anything the tool cannot place is listed under Column mapping in Settings, where a dropdown for every field sets it by hand.

Pick from the dropdown, type in the search box to narrow it by SKU, ASIN, UPC, or title, use Previous and Next, or press the Left and Right arrow keys, which are ignored while the cursor sits in a text box. Every entry in the dropdown leads with its sheet row, so the numbers run down the left of the list and a row read off a report or a colleague's message can be found by eye; the SKU, the ASIN where it differs, and the first sixty characters of the title follow it. A row carrying neither a SKU nor a title is listed as its row number alone, since that is the only thing it can be called. An entry wider than the column is cut to fit rather than left to run off the edge, the title giving up its tail first so the row number, SKU, and ASIN stay whole, and the whole entry is on the tooltip if you hover it. Widening the Source column with the divider beside it hands the entries their characters back. The search box matches SKU, ASIN, UPC, and title, not the row number, which has a box of its own below.

The line below those buttons names the SKU on show and the sheet row it sits on, and that row number is a box you can type into: enter a row and the preview moves to the listing on it, which is the way in when you are reading an address off a report or working down a list of rows in Excel. What goes in is a sheet row rather than a position in the list, counted the same way as every cell address the tool prints, so on a sheet with blank lines in it the two will not agree. A row carrying no listing, whether a blank line, the header, or anything above it, resolves to the next listing below it, and anything past the end to the last one; the box then shows where it actually landed and says so. Choosing a SKU any other way keeps the number current.

The preview mode radio switches between the desktop page, the narrower mobile layout, and the search result card. Source and Preview sit side by side on a wide screen, divided by a bar that can be dragged either way to give one side more of the page: drag it left for a wider preview, right for a wider set of controls and a longer entry in the SKU list. It takes the keyboard as well, once tabbed to, with the Left and Right arrow keys moving it two points at a time, five with Shift held, Home and End going to the narrowest and widest it allows, and Enter or a double click putting it back to the default third. Where it is left is remembered between visits, and Reset returns it. Below tablet width the two stack into one column and there is no split to set.

Most catalogue exports carry rows nobody is reviewing: lines that have been discontinued, another marketplace's SKUs, a supplier's whole range where one brand is in scope. Row filters, under Settings, cut the sheet down to the rows in front of you. Add a rule, point it at a column, choose a test, and type or pick what to test against. A sheet with a Discontinued? column is filtered to the live lines by one rule reading Discontinued? contains Active, or by Discontinued? does not contain Discontinued, whichever way that column happens to be written.

A rule can point at any column in the sheet, and the ones worth filtering on are usually the ones the preview has no other use for, a status flag, a channel marker, a stock figure. Those are exactly the columns listed as unmapped under Column mapping, and they are offered here alongside the mapped ones. The values that column actually holds are offered as you type, so a status column is filtered by picking one of its three answers rather than by spelling it, and each rule reports underneath how many rows it would keep on its own, which is how you find out a rule says what you meant before combining it with the rest.

The tests are contains, does not contain, is exactly, is not, starts with, ends with, is one of, is none of, is empty, is not empty, is greater than, and is less than. Is one of takes a short list separated by commas, pipes, or new lines, so a channel column is cut to two marketplaces in one rule. The two numeric tests read a cell the way a spreadsheet wrote it, so 1,250 and $1,250.00 both compare as 1250, and a cell holding words rather than a number fails a numeric test rather than passing it by accident. Matching ignores case unless Match case is ticked.

Several rules combine under the dropdown at the top: keep a row when every rule matches, which is the way to say Active and in stock, or when any rule matches, which is the way to say either of two brands. Add as many as you need and remove any one of them. The tick box switches the whole thing on and off without discarding the rules, so a catalogue can be read filtered and then whole without rebuilding anything.

A filter cuts everywhere at once, which is the point of it: the dropdown, the preview, Previous and Next, the arrow keys, Issues across every SKU, Audit every SKU, and the plain text report all read the rows the filter left standing. That includes the variation switcher, so a family whose blue child is filtered out offers red and green. It is not the same thing as the search box above, which narrows the dropdown only and leaves the audits reading the whole sheet. Because filtering changes what a report is a report of, every figure that could be misread says so: the line under the SKU picker names how many rows are hidden, the catalogue browser repeats it in its heading, and the plain text report carries the rules and the count of rows shown in its header, so a report reading no errors across 120 rows can never be mistaken for one covering all 450.

Nothing is written back. A hidden row is hidden in this browser and untouched in the spreadsheet, and it comes straight back when the rule is loosened or switched off. Rules are remembered by column name rather than by position, so they survive a refresh, a reload, an edit, and a column being inserted in Excel, and a watched file re-runs them on every poll: a row marked discontinued in Excel drops out of the catalogue within a couple of seconds without anyone touching the filter. A rule naming a column the loaded sheet does not carry is ignored rather than failing every row against it, since a filter that empties the catalogue over a renamed column is worse than one that quietly does less; the rule says so underneath and the status line counts how many were left out. Where a filter does legitimately hide every row, the preview says that is what happened rather than going blank, and Reset clears the rules along with everything else.

Hover any value and the tooltip names its column and exact cell, written as Item Name (D20). That is the real spreadsheet address, counted from the sheet origin and including blank rows above the header, so you can go straight to it. A line built from several columns names every one of them. Character counts sit under each field, coloured poor, weak, better, or strong: length sets the band, and any hard compliance break forces poor. Every band below strong carries the sentence that names the fix, and the issue list repeats that wording rather than inventing a second one.

Every slot is drawn whether or not the cell holds a URL, so a gap in the middle of a sequence is obvious at a glance. A missing main image is a large dashed box; each empty secondary slot is a smaller one captioned with its column. Hovering shows the column, the cell, and the URL itself. Turn the placeholders off under Checks to see only the images that exist.

The strip opens with the main image, ahead of Image 01, and clicking any thumbnail puts that picture in the large box above it. The thumbnail on show is ringed in blue, against the red that marks an empty or broken slot, so the strip says both which picture you are looking at and which ones are a problem. Keyboard reaches it too: Tab moves between thumbnails and Enter or Space shows one. Clicking the large picture copies its URL to the clipboard, which is how every image in the strip reaches the clipboard in two clicks. Settings can switch that to the file name on its own, parsed out of the address, so a Dropbox link ending in SSRD-8030CASE_fatdaddios.jpg?rlkey=htsezbg4bjj90j4lh7q6pcvlp&raw=1 copies as SSRD-8030CASE_fatdaddios.jpg. The URL is what goes back in a cell; the file name is what you match against a folder or quote to whoever keeps the photography. Moving to another SKU opens on that row's main image again, while reloading the sheet or editing a draft leaves the picture you were looking at where it is.

A URL that will not load leaves a box of the same size marked failed, so a dead link changes the colour of the strip without changing its shape, and the column, the cell, and the URL stay on the tooltip. A failed box is clickable exactly as the picture would have been, so a broken thumbnail still moves to the large box and shows the failure at full size. The usual causes are a file that has been deleted, a folder that is not public, or a share address that serves a web page rather than the picture. Dropbox links ending in dl=0 are the last of those, and are requested as raw=1 so the preview shows the file rather than the page around it. Worth knowing that this rewrite is for the preview only: Amazon fetches the URL exactly as the sheet writes it, so a link that needs correcting to display here needs correcting in the sheet too. That is why the address itself is checked as well as the picture. A share address from Dropbox, Google Drive, Google Photos, OneDrive, Box, or WeTransfer answers with a web page wrapping the file rather than the file, so Amazon receives markup instead of an image and the listing goes live without that picture; each is reported as an error naming the service and what to do about it. So is anything that is not a web address at all, such as a path copied from Windows. A Dropbox link already carrying raw=1 or dl=1 serves the file and is left alone, as is every ordinary image URL. Separately, the same URL appearing in two slots is an advisory rather than an error, since Amazon accepts it and simply shows one picture twice; the report names the earlier slot so you can see which pair collided.

Two separate rules are reported against the count, because Amazon treats them differently. A row with no image URL at all is an error: Amazon requires at least one and rejects a listing without it, and a row whose main image cell is empty is an error on the same footing, since the main image is the one the search results use. Fewer than six images in total, counting the main one, is only an advisory, because such a listing goes live and simply converts worse than it could. A row carrying one image is therefore flagged once, as an advisory; a row carrying none is flagged once, as an error. A sheet with no image columns at all is a different matter again and is not treated as a fault: there is nothing to judge, so the row says so as an advisory rather than showing an error it cannot support, which keeps a copy-only sheet from turning red on every SKU while still making clear the image rules went unchecked.

A MAP or Price column supplies the price and an MSRP or List Price column is rendered struck through underneath. Both print the way Amazon prints them rather than the way a spreadsheet stores them: a cell holding 262.5 shows as $262.50, given two decimal places, thousands separators, and the symbol for whatever the Currency column holds, falling back to the dollar where the sheet has no such column. A cell that already spells out its own symbol or currency code is left exactly as written, so a price entered as $262.50 or 262.50 USD is never dressed up twice. Hovering the figure names the money cell and, where it supplied the symbol, the currency cell beside it. Amazon draws the strike only where the list price is above the price, so where it is not the figure is left plain and the preview says the live page will show none. A row carrying a single figure shows it as the price, whichever column it came from.

Item highlights render beneath the title as one grey comma separated line, as Amazon shows them. Exports keep the whole block in one cell, so it is split on newlines, pipes, or semicolons, and on commas only where none of those appear; the Item highlights setting forces a separator or turns splitting off. Each piece is measured against its own limit, 100 characters by default, and runs through the same banned phrase and character checks as the bullets. There is no lower bound: a two word highlight is what the field is for.

Bullets answer to two separate limits. The per bullet cap in Settings defaults to 500, the flat file maximum for sellers, while Amazon's style guide asks for 255 and some categories for 150. Separately, only the first 1,000 bytes across all bullets combined are indexed by search, reported as a total beneath the list; past that point the text still shows on the page but earns no search visibility.

Where the variation columns are populated, the preview builds the switcher Amazon would build, above About this item. The Variation Theme Name names the dimensions and their order, and each dropdown lists the values carried by every SKU sharing this row's Parent SKU, written as a shopper sees them: an iPhone family reads 256GB and Midnight rather than the part number printed on the box. Choosing one moves the whole preview to that SKU. Where a combination does not exist the nearest sibling is shown and the tool says so. A sibling that leaves the dimension empty is never listed as a value, an empty cell being a fault rather than a value, but it still has to be reachable: the dropdown carries a Not set entry naming how many rows are in that state, and where the row on screen is itself the empty one that entry reads as its own state instead. Without it a family half filled in would be a one-way door, since a shopper could step out of the empty rows but never back into them.

The theme is read as Amazon writes it. A single dimension such as COLOR, SIZE, DIAMETER, ITEM_SHAPE, NUMBER_OF_ITEMS, SET_NAME, COLLECTION_ITEM, or OCCASION_TYPE draws one dropdown; dimensions joined by slashes draw one each, in the order the theme lists them, so COLOR/SET_NAME, COLOR/ITEM_SHAPE/SIZE, and NUMBER_OF_ITEMS/DIAMETER/COLOR each come out as the theme reads. That order is the theme, which is why COLOR/SIZE and SIZE/COLOR are two different themes and switch in two different orders. The spellings Amazon has retired are read as the attribute they always were, so COLOR_NAME switches Colour, SIZE_NAME switches Size, MATERIAL_TYPE switches Material, and a theme carrying one still works even though Amazon marks it deprecated for new listings. Longer tokens are matched before their parts, so ITEM_SHAPE is never mistaken for Shape alone and ITEM_DIAMETER_STRING/NUMBER_OF_ITEMS reads as Diameter then Number of Items rather than picking Diameter twice. A theme written out by hand as Size, Style or Size-Style, or run together as SizeColor, is read the same way.

A dimension can only be drawn where the sheet carries a column for it. Where the theme names one it does not, the dropdowns it can draw are drawn and the rest are named under them, so a COLOR/SET_NAME family in a sheet with no Set Name column says exactly that rather than passing itself off as a Colour family. Point the missing one at a column under Column mapping in Settings, or add the column to the sheet. A count is the one case that answers itself: Number of Items, Number of Pieces, and Item Package Quantity are one figure written three ways, so a NUMBER_OF_ITEMS theme in a sheet carrying only Number of Pieces reads that column and the note under the dropdowns names which one it read. Nothing else stands in for anything, since a Size borrowed for a Diameter or a Style for a Colour would be a guess rather than the same figure under another name. Below the dropdowns the theme is named alongside the row's Product Type, where the sheet carries that column, and nothing is judged against it: Amazon publishes a different list of accepted themes for every product type and revises those lists, so a copy of one written into this page would go stale without saying so. What it reports is the pairing, which is what you would check against the current product type definition. An empty theme falls back to whichever attribute a family is actually built on: Size, Colour, Style, Material, Shape, Diameter, Number of Items, Set Name, Collection Item, Occasion, Pattern, Flavour, Scent, Team Name, or Item Package Quantity, whichever of them differ across the family. The item's own measurements are left out of that fallback on purpose, since a length or a weight differing between siblings is usually just them being different products rather than the axis a shopper switches on.

Below the dropdowns, the variation family block shows Parentage Level, Parent SKU, and Variation Theme Name. Amazon needs all three: some filled and some empty is an error, none filled only an advisory, and another channel's variant group identifier standing alone is called out directly. Relationship Type is no longer part of that set. Amazon retired the column, so it is neither expected nor counted against the family, and it appears in the block only where an older sheet both carries the column and has something in it. Those values and the backend search terms are set in italics, since no shopper sees them. Settings can also fall back to Size, Style, or Color in an order you choose when Variation Theme Name is blank, and the label then names the column that supplied the value. That setting decides the label on the preview; which dropdowns get drawn is decided by the theme, or where there is none, by what actually differs across the family.

Every column filled in is where the family checks start rather than where they end, since a family wired correctly can still fail to build. Three faults are reported under the switcher and again in the issue list, and Flag variation family faults in Settings turns them off along with the completeness check. Children of one Parent SKU carrying two different themes is the first: Amazon builds one family from one theme, and a family holding two leaves the dropdowns changing shape as you step through it, since they follow whichever row is on screen. A child with the cell simply left blank is not a second theme but a hole, and it is reported against the row that owns it rather than against every one of its siblings. A child left empty on the dimension its own family switches on is the second, which leaves it with nothing for a shopper to select it by. Two children reading identically on every dimension drawn is the third. What counts is the combination and never any single attribute in it: two children may share a Size for as long as something else the theme names parts them, which is why a SIZE/STYLE_NAME family holding an 8 inch Solid Bottom and an 8 inch Removable Bottom is in order and nothing is said about it. The fault is everything the theme switches on reading the same, so Amazon sees one combination twice and the switcher can only ever reach the first of them. The message names the theme for that reason, since an attribute the sheet holds but the theme does not name has no part in the combination however different it is. Where such an attribute would have told the whole group apart it is named as something to add to the theme, which is the case with a family themed SIZE alone whose children are really separated by Style.

The product details table is built from up to twenty two attribute columns, each name in bold beside its value, with value and unit joined into one readable line. Attributes that are mapped but empty read as not set, which is how a gap in the spec table becomes visible. Backend search terms get their own section, capped at 250 bytes rather than characters, so an accented letter or a curly quote costs more than its length suggests; words already in the title are reported, since Amazon indexes the title anyway.

Switched on in Settings, this makes the preview writable. Double click a title, the highlights line, any bullet, the description, or the search terms, then press Enter or click away to keep the change; Escape abandons it. The counts, bands, checks, issue list, and SKU list all judge the draft rather than the cell. Nothing is written back to the spreadsheet: drafts live in this browser only, and the copy button beside a changed value is how the new wording travels to Excel. A button by Reset discards them all and appears only when there are some to discard.

Every problem is collected under Issues Found, below Settings, prefixed with its cell address and mirrored into a plain text report. The report names itself, the file and worksheet it came from, and the time it was taken, then tallies errors against advisories before a tab separated list that keeps its columns when pasted into a spreadsheet. Audit every SKU runs the same checks across the whole sheet at once, which is the fastest way to find the few rows needing attention in a catalogue of several hundred. Its tally line also counts the pictures: every image reference in the sheet, repeats included, and how many unique file names those references amount to. The two are worth reading together, since a catalogue where the second number is far below the first is one where the same photograph is doing duty across many listings. Distinctness is by file name rather than by address, so one picture counts once whether it arrives resized, signed, or from a second CDN. Under that sits a roll-up of the variation themes in use, each with the product type it is filed under and how many rows carry it. Both the report and the whole catalogue list keep company with the SKU picker: they appear once a sheet is loaded and there is something to audit, and go away again on a reset, since a heading offering a report is worth nothing with no sheet to write one from. Where row filters are running, every one of these figures covers the rows that are shown rather than the whole sheet, and the report header names the rules and the count so the reader of a pasted report knows which it is.

Issues across every SKU, folded shut between the issue list and the report, is that same audit turned into something to read rather than paste: every SKU with its errors and advisories in full, and the clean rows listed saying no issues, so a row absent from the problems is distinguishable from one that was never checked. It is audited only when opened and costs nothing while shut, then keeps itself current as the sheet reloads or drafts change. It carries the same image counts and theme roll-up in its heading, the roll-up drawn at the six commonest pairings with the rest a click away under the count, and given in full in the report either way, a pasted report having no clicks in it. A dropdown narrows it to errors or advisories alone, the box beside it filters by SKU, cell, field, or the wording of the issue itself, and unticking the checkbox drops the clean rows. Clicking any SKU opens it in the preview. The filters shape that list alone; the plain text report is built the same way regardless.

Grouped by issue is the same audit counted the other way round, for deciding what to fix first rather than working a listing at a time. Each line is one fault with the number of issues it accounts for, the number of SKUs they fall on, the fields involved, and the SKUs themselves to click through to, twelve of them at a time with the rest one click away under the count. What is opened stays open through a filter change or a fresh sweep, so a long list does not fold itself shut under someone halfway down it. Errors lead advisories as they do everywhere in this tool, and the commonest leads inside each band: one fault standing against four hundred rows earns an afternoon in a way that four faults standing against one row each do not. Two rows never word the same fault identically, each naming its own figures, its own quoted phrase, its own siblings, so those are taken out to decide what counts as one fault, and a catalogue reporting two thousand issues usually turns out to be reporting two dozen. The wording shown under a group is one row's own and the figures inside it differ from row to row, which is why the SKUs are there to open. Clean SKUs have no place in this view, having no fault to be grouped under, so the checkbox that includes them is put away while it is on.

Anyone who writes or approves Amazon listing content in a spreadsheet is working blind until the page goes live. Seeing the row rendered as a page catches the things a column of text hides: a title that reads well in a cell but wraps badly beside the image, a bullet that runs four lines longer than its neighbours, a missing secondary image, a phrase that will get the listing suppressed. These are the situations the tool is built for.

  • Pre-publish quality check: Step through all forty SKUs of a new range before the flat file is uploaded, confirming each has a main image, six images in all, five bullets of similar length, and a title inside the 75 character cap.
  • Checking the images without opening every link: A cell holds an address, not a picture, so verifying an import by hand means copying or clicking through each link in turn to find out what is on the end of it. Every image for a SKU is drawn here at once, main image first, with the column, the cell, and the URL named on hover, and the arrow keys carry that across hundreds of rows, so a wrong colourway, the same photo used twice, a placeholder nobody swapped out, or a link that no longer loads is caught by eye instead of one browser tab at a time.
  • Compliance review: Catch the breaks that get listings suppressed rather than merely ranked poorly, including prohibited symbols such as exclamation marks and dollar signs, all-capital titles, promotional claims like free shipping or best seller, restricted FSA and HSA wording, and unsubstantiated references to the FDA or EPA.
  • Keyword stuffing check: The word repetition rule flags any word used more than twice in a title, with prepositions, articles, and conjunctions exempt, so a title reading stainless steel steel tool is caught before Amazon rejects it.
  • Copywriter handoff: A writer edits the sheet in Excel on one screen with the preview open on the other; each save redraws the page within about two seconds, turning listing copy into something you tune by eye instead of by character count.
  • Shared sheet, several editors: Point the preview at a Google Sheet the team already works in and it redraws as colleagues type, with no file to send anyone and nothing to re-import; anyone holding the link can open the same preview on their own machine.
  • Agency and client sign off: Run Audit every SKU, copy the plain text report, and send a client a single list of exactly which cells need changing, each identified by address rather than by description.
  • Mobile truncation review: Most Amazon traffic is mobile, where long titles suffer most. The mobile and search result modes show where a title gives out, which is usually well before the 75 character limit.
  • Variation family review: Cycle a colour or size family with the arrow keys to confirm the variation attribute is populated on every child and that the images differ where they should.
  • Catalogue audit of inherited listings: Export an existing catalogue from Seller Central, load it here, and audit every SKU to find the legacy rows carrying banned phrases or over-length titles from before the current guidelines.
  • Reviewing the live range out of a master sheet: A master sheet holds everything ever sold, and a review of it wastes most of its time on rows that will never go live again. One row filter reading Discontinued? contains Active, or Status is one of Active, Pending, cuts the catalogue to the lines under review, and the audit, the report, and the arrow keys all follow it, so the error count is a count of errors that matter rather than a count including two hundred dead SKUs.
  • Splitting one export by channel or brand: A supplier or agency sheet covering several brands, marketplaces, or product types is worked one slice at a time by pointing a rule at that column, sending the client a report covering their rows alone without cutting the sheet into copies that then have to be kept in step.
Inputs, outputs, and what the Amazon Listing Preview Tool computes

The form above accepts the following inputs and produces the outputs listed below. This summary is rendered in the page so the parameters are visible to crawlers, assistive tech, and indexing agents that don't fetch the embedded tool frame.

Inputs

  • Google Sheet link or ID (text input)
  • Search SKU, ASIN, UPC, or title (text input)
  • SKU
  • sheet row (numeric input)
  • Desktop product page · default: desktop
  • Mobile product page · default: mobile
  • Search result · default: search
  • Hide the rows these rules do not keep
  • Keep a row when · default: every rule matches
  • Match case
  • Separator · default: Auto
  • Fall back to another attribute when Variation Theme Name is empty
  • Fallback order · default: Size, then Style, then Color
  • Title limit (numeric input) · default: 75 · range: 1 to 500
  • Bullet limit (each) (numeric input) · default: 500 · range: 1 to 5000
  • Item highlight limit (each) (numeric input) · default: 100 · range: 1 to 1000
  • Description limit (numeric input) · default: 2000 · range: 1 to 50000
  • Backend search terms limit (bytes) (numeric input) · default: 250 · range: 1 to 5000
  • Search result title cut (characters) (numeric input) · default: 70 · range: 10 to 300
  • Flag Amazon compliance breaks
  • Flag length problems
  • Flag missing and broken images
  • Flag variation family faults
  • Show empty image slots and attributes so gaps are visible
  • Clicking an image copies · default: The image URL
  • Let me rewrite copy in the preview by double clicking it
  • Show · default: Errors and advisories
  • matching
  • grouped by · default: SKU
  • Include SKUs that have nothing to report
  • Copy this into an email or ticket

Controls

Clear search · Generate · Reset · Copy report

Worked example

Download a sample flat file to try the tool with before pointing it at a catalogue of your own.