# Barcodes.gg > Barcodes.gg is a barcode API for sneakers and streetwear, run by Reactive Systems SL. It resolves UPC, EAN and GTIN barcodes and style codes (SKUs) to structured product data: name, brand, style code, colorway, size, release date, retail price and images. The database holds 3.12 million barcodes for 1.59 million products. Resale prices per size from StockX and Alias are on Standard Plus and higher plans. Free barcode tools and a free public lookup sit alongside the paid API. ## Product - [Sneaker barcode API](https://barcodes.gg/): what the API does, a live example and plans. - [Barcode lookup API for developers](https://barcodes.gg/barcode-lookup-api): endpoints, authentication, request and response examples. - [API documentation](https://barcodes.gg/guide/docs/introduction/): every endpoint, parameters and response schema. - [OpenAPI specification](https://barcodes.gg/openapi.json): machine-readable description of the API. - Pricing (https://barcodes.gg/#pricing), per month: Basic EUR 19 (2,000 calls), Basic Plus EUR 35 (2,000 calls), Standard EUR 49 (10,000 calls), Standard Plus EUR 79 (10,000 calls), Pro EUR 99 (50,000 calls), Pro Plus EUR 129 (50,000 calls), Enterprise EUR 199 (200,000 calls). Free trial: 7 days, 100 calls, no payment method. - Reverse lookup from style code to per-size barcodes: Basic Plus, Standard Plus, Pro Plus, Enterprise. - Extra calls: a verified Powered by Barcodes.gg link on a public page gives a paid plan 50% more calls each billing period, up to 5,000. The trial does not get the bonus. [How the link bonus works](https://barcodes.gg/blog/extra-api-calls-powered-by-barcodes-gg) - [Publishable keys](https://barcodes.gg/guide/docs/api-instructions/publishable-keys/): `pk_` keys for barcode lookups from a web page. A key works only on the lookup routes and from the domains you allow. Lookups use the calls of your plan. - [Barcode scanner library](https://barcodes.gg/guide/docs/code-wrappers/barcode-scanner-library/): `@barcodesgg/scanner` on npm, a camera scanner for UPC and EAN with a web component, a React hook and a headless core. Scanning needs no key; product lookup uses a publishable key. ## Resale price API - [Sneaker resale price API](https://barcodes.gg/sneaker-price-api): resale prices per size from StockX and Alias, by style code (`GET /api/v2/prices/{style_code}`) or for the size of one barcode (`GET /api/v2/prices/barcode/{barcode}`). Each size has its own as_of time; is_stale is true when the newest price is older than 24 hours. - Parameters: `sites` (stockx, alias or all), `currency` (StockX currency, default EUR; Alias is USD in every region), `market` (StockX: EU or a country with its own prices, up to 3), `region` (Alias region: EU by default, FR, GB, US, HK and other region codes, or global), `consign` (false, true or both; StockX consign is Flex) and `fresh` (auto or cache). A value off the allowed list returns 422 with the allowed values. - Response: StockX sizes have `price` (lowest ask), `bid` and `sales`. Alias sizes have `ask` (lowest ask in the region), `bid`, `last_sale`, `global_indicator` and `sales`. `sales` is null on consignment rows. - [Resale prices documentation](https://barcodes.gg/guide/docs/api-instructions/resale-prices/): parameters, response fields and errors. - Access: tokens with the `prices` ability, on Standard Plus and up (Standard Plus, Pro, Pro Plus and Enterprise). One answered request uses one call; a product without cached prices is not charged. Not in the free trial. - [API use cases](https://barcodes.gg/use-cases): example builds with full code. - [Build a sneaker price Discord bot](https://barcodes.gg/use-cases/discord-price-bot): Build a sneaker price Discord bot: a /price command in discord.js that shows the lowest ask per marketplace for a style code. Full code, about 40 lines. - [Build a sneaker price alert with a cron job](https://barcodes.gg/use-cases/price-monitor): Build a sneaker price monitor: a Node.js script, run by cron, that posts to a webhook when the ask for a size drops below your target. Full code. - [Add resale prices to inventory software by barcode](https://barcodes.gg/use-cases/inventory-software): Add resale prices to inventory software: scan a sneaker barcode and get its style code, size and prices per marketplace in one API call. Code included. - [API changelog](https://barcodes.gg/changelog): Changes to the Barcodes.gg API, newest first: new endpoints, plan changes and fixes, with links to the documentation. ## Free lookups - [Nike barcode lookup](https://barcodes.gg/nike-barcode-lookup): Look up the UPC or EAN barcode from a Nike or Jordan shoe box and see which product it identifies. - [Jordan barcode lookup](https://barcodes.gg/jordan-barcode-lookup): Look up the UPC or EAN barcode from an Air Jordan shoe box and see which product and release it identifies. - [adidas barcode lookup](https://barcodes.gg/adidas-barcode-lookup): Look up the EAN or UPC barcode from an adidas shoe box and see which product it identifies. - [New Balance barcode lookup](https://barcodes.gg/new-balance-barcode-lookup): Look up the UPC or EAN barcode from a New Balance shoe box and see which product it identifies. - [ASICS barcode lookup](https://barcodes.gg/asics-barcode-lookup): Look up the EAN or UPC barcode from an ASICS shoe box and see which product it identifies. - [Sneaker barcode lookup](https://barcodes.gg/sneaker-barcode-lookup): Look up the UPC or EAN barcode from a sneaker box and see which product it identifies. - [Style code lookup](https://barcodes.gg/style-code-lookup): Free lookup from a sneaker style code (SKU) to the product name, image and number of size barcodes held. Per-size barcodes are a Plus plan feature. - [Barcode database by brand](https://barcodes.gg/barcodes): public barcode pages for in-demand sneakers, grouped by brand and model. - [Sneaker release calendar](https://barcodes.gg/sneaker-release-calendar): upcoming releases by week and whether their barcodes are on file. ## Free tools - [All barcode tools](https://barcodes.gg/tools): every tool and free lookup on one page. - [Barcode scanner](https://barcodes.gg/tools/barcode-scanner): scan UPC and EAN codes with a camera and preview a matching product. - [Barcode generator](https://barcodes.gg/barcode-generator): generate CODE128, EAN-13, UPC-A, EAN-8, ITF-14 and QR code images as PNG or SVG. - [GTIN converter](https://barcodes.gg/tools/gtin-converter): convert between UPC, EAN, GTIN-12/13/14. - [GS1 Digital Link builder](https://barcodes.gg/tools/gs1-digital-link): build and parse GTIN-based URLs and generate QR codes. - [GTIN check digit calculator](https://barcodes.gg/tools/check-digit-calculator): compute or check GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13) and GTIN-14 check digits. - [UPC-A check digit calculator](https://barcodes.gg/tools/upc-check-digit-calculator): compute UPC-A check digits. - [Barcode validation tool](https://barcodes.gg/tools/barcode-validation-tool): validate EAN-13, UPC-A/E, ISBN-10/13 and GTIN-8/12/13/14 barcodes and their check digits. - [Bulk catalogue enrichment](https://barcodes.gg/tools/catalog-enrichment): upload a CSV of style codes and export product details and size barcodes. Needs an account and a one-off payment per export: EUR 19 for up to 1,000 rows, then EUR 1 per started block of 100 rows, up to 10,000 rows. ## Comparisons - [Compare barcode lookup and sneaker price APIs](https://barcodes.gg/compare) - [Best sneaker barcode API for each job: lookup, sizes, prices](https://barcodes.gg/compare/best-sneaker-barcode-api) - [UPCitemdb alternative for sneaker and apparel barcodes](https://barcodes.gg/compare/upcitemdb-alternative) - [KicksDB alternative for former KicksDB users](https://barcodes.gg/compare/kicksdb-alternative) - [Barcode Lookup API alternative for sneakers and apparel](https://barcodes.gg/compare/barcode-lookup-alternative) - [Best sneaker price API: six options compared](https://barcodes.gg/compare/best-sneaker-price-api) - [StockX API alternative: StockX prices without a seller account](https://barcodes.gg/compare/stockx-api-alternative) - [Packet alternative: pckt.sh vs Barcodes.gg](https://barcodes.gg/compare/packet-alternative) - [SoleFetch alternative: SoleFetch API vs Barcodes.gg](https://barcodes.gg/compare/solefetch-alternative) ## Research - [Research and data studies](https://barcodes.gg/research): Data studies by Barcodes.GG on barcodes, product data and sneaker prices: method, tables, charts and CSV files. Free for editorial use with a link. - [Invalid example barcodes in public documentation (2026)](https://barcodes.gg/research/invalid-barcode-examples-2026): 361 documentation sites in 25 languages show an example barcode that fails the GS1 check digit. Why, where, and how to fix it. - [Methodology: invalid example barcodes in public documentation](https://barcodes.gg/research/methodology): How Barcodes.GG built the invalid example barcode study: sample, dates, the strict rule, classifications, thresholds, limits and corrections. - [Sneaker resale premium index (2026)](https://barcodes.gg/research/sneaker-resale-premium-2026): 60 of the top 100 StockX EU sellers ask below US retail (46 with VAT added back). Premium by release year, brand and model, and the trend since 2024. - [Sneaker size premium: the size tax on StockX](https://barcodes.gg/research/sneaker-size-premium-2026): Ask per EU size for the top 200 StockX EU styles: EU 42 to 44.5 is the cheapest run, EU 50.5 to 51.5 asks about 70 % more. Bid-ask spread per size. - [Sneaker retail prices 2020 to 2026: how much more a model costs](https://barcodes.gg/research/sneaker-retail-prices-2020-2026): Median US retail price by release year for Pegasus, Jordan 1, Air Force 1, Gel-Kayano and more, 2019 to 2026, plus barcodes per product and per release. ## Guides - [Blog](https://barcodes.gg/blog): every guide, newest first. - [How to enrich a product catalogue CSV from style codes](https://barcodes.gg/blog/enrich-product-catalog-csv-from-style-codes): Use manufacturer style codes to add product details and size-specific barcode pairs to an inventory CSV without writing an integration. - [What is a GTIN? UPC, EAN & GS1 barcode standards](https://barcodes.gg/blog/what-is-a-gtin): A GTIN is the GS1 Global Trade Item Number that sits above UPC, EAN and the 14-digit case code as one shared product identifier. - [UPC vs EAN vs GTIN: what is the difference](https://barcodes.gg/blog/gtin-vs-upc): UPC is not an alternative to GTIN. A UPC-A barcode carries a 12-digit GTIN-12, so UPC is one member of the wider GTIN family. - [EAN-13 format explained: structure & prefixes](https://barcodes.gg/blog/ean-13-format-explained): An EAN-13 barcode is a 13-digit GTIN-13 built from a GS1 prefix, a company prefix, an item reference and a check digit. - [GTIN-14 explained: cases, cartons & pallets](https://barcodes.gg/blog/gtin-14-explained): GTIN-14 identifies a packaging level such as a case or carton by adding an indicator digit in front of the base product GTIN. - [How to validate a barcode: UPC, EAN & GTIN](https://barcodes.gg/blog/how-to-validate-a-barcode): A practical guide to checking that a UPC, EAN, or GTIN is well formed before you trust it. - [How to calculate a UPC/EAN check digit by hand](https://barcodes.gg/blog/how-to-calculate-check-digit): Compute the modulo-10 check digit for any UPC-A or EAN-13 with a pen, paper, and one small rule. - [Why your barcode check digit does not match: 7 causes](https://barcodes.gg/blog/check-digit-mismatch-causes): The seven reasons a UPC or EAN check digit fails validation, and how to fix each one. - [UPC-A vs UPC-E: format, length & check digit](https://barcodes.gg/blog/upc-a-vs-upc-e): How UPC-E compresses a 12-digit UPC-A into 8 digits, and why they share a check digit. - [Can a barcode tell if sneakers are real?](https://barcodes.gg/blog/how-to-check-if-sneakers-are-real-barcode): What a barcode lookup can and cannot tell you about sneaker authenticity, and how to use it as one signal among several. - [SKU lookup vs barcode lookup for resellers](https://barcodes.gg/blog/sku-lookup-vs-barcode-lookup): The difference between looking up a product by SKU or style number and by barcode, and when to use each one for sourcing. - [Barcode API guide: integrate product lookup into your app](https://barcodes.gg/blog/barcode-api-guide): A walkthrough for developers: how a barcode API turns a scanned GTIN into structured product data inside your application. - [Best barcode & UPC database APIs compared (2026)](https://barcodes.gg/blog/best-barcode-apis-compared): Six barcode and UPC database APIs side by side, with the entry price and free tier each vendor published in October 2026. - [How to build a barcode scanner product-lookup feature](https://barcodes.gg/blog/how-to-build-a-barcode-scanner-feature): How to connect a camera scanner to a product-data API so users can scan an item and see what it is. - [What data does a barcode lookup API return?](https://barcodes.gg/blog/barcode-lookup-api-fields-explained): A field-by-field explanation of what you get back from a product-data barcode API and how to handle uneven results. - [Getting started with the Barcodes.gg API](https://barcodes.gg/blog/getting-started-barcodes-gg-api): The Barcodes.gg API turns a barcode into a structured product record with one authenticated GET request. This guide takes you from token to first response. - [Speeding up warehouse sneaker intake with barcode lookups](https://barcodes.gg/blog/warehouse-sneaker-identification): Identifying incoming sneakers by hand is slow and error-prone. A box barcode plus a lookup call turns intake into a scan that auto-fills name, style code, colorway and size. - [How a price-comparison site is built on barcode data](https://barcodes.gg/blog/barcode-data-behind-a-price-comparison-site): Comparing one product across forty shops only works if every shop is talking about the same product. That identity problem is a barcode and style-code problem before it is a pricing one. - [Product images in a barcode-keyed catalog](https://barcodes.gg/blog/product-images-in-a-barcode-keyed-catalog): A catalog assembled from many sources inherits many pictures of the same item. Choosing one, and keeping it loading, is an identifier problem with a hosting problem attached. - [Get up to 5,000 extra API calls with a Powered by Barcodes.gg link](https://barcodes.gg/blog/extra-api-calls-powered-by-barcodes-gg): Add a Powered by Barcodes.gg link to a public page and your paid plan gets 50% more API calls each billing period, up to 5,000. - [GTIN requirements by marketplace: where sneaker listings need a UPC or EAN](https://barcodes.gg/blog/gtin-requirements-by-marketplace): Amazon and Google ask for the manufacturer GTIN on branded shoes. eBay asks for it in most categories. StockX and GOAT list by catalog match or style code. - [Google Merchant Center GTIN for sneakers: gtin, mpn, brand and identifier_exists](https://barcodes.gg/blog/google-merchant-center-gtin-for-sneakers): Branded shoes need the manufacturer GTIN for each size in a Merchant Center feed. The mpn, brand and identifier_exists attributes cover the cases where no GTIN exists. - [eBay and Amazon UPC requirements for shoes](https://barcodes.gg/blog/ebay-amazon-upc-requirements-for-shoes): Amazon requires a product ID for shoes and lists no exception for the category. eBay requires identifiers in most categories and limits when "Does not apply" may be used. - [Resolving sneaker size variants in a style-code barcode lookup](https://barcodes.gg/blog/resolve-style-code-lookup-size-color-variants): A style-code lookup can return many barcodes for one shoe. Learn how to read size and color variant data so you attach the right barcode to inventory. - [Valid sneaker barcode no result? Troubleshooting lookup coverage](https://barcodes.gg/blog/valid-sneaker-barcode-no-result): A barcode can pass validation and still return no product result. Learn how to separate input errors, normalization issues and catalog misses before accepting or replacing the number. - [HTTP 200 with error true: how to read barcode lookup failures](https://barcodes.gg/blog/barcode-api-http-200-error-true): A 200 status is not a successful product match. Learn how to branch on status, the error flag, and the message so you do not treat every miss as a 4xx or as coverage. - [Why a barcode gets an “Invalid prefix/type combination” error](https://barcodes.gg/blog/barcode-invalid-prefix-type-combination): This validation error means the selected barcode type does not fit the prefix the validator detected. Check the format selection before recalculating the check digit. - [How to match GS1 XML and EANCOM GTIN padding](https://barcodes.gg/blog/gs1-xml-vs-eancom-gtin-padding): GS1 XML stores every GTIN as 14 digits with leading zeros. GS1 EANCOM strips those zeros. Match both feeds from one core number, then check the digit. ## Notes - The catalog is centred on sneakers and streetwear and also holds clothing, accessories and collectibles; it is not a general consumer-goods barcode database. - Public barcode pages show the product name, brand, a photo, style code, colorway, the size of that barcode, category, release date, retail price, description and the barcode formats. The barcodes of the other sizes of a style, bulk results and the API need an account with requests available. ## Company - [About Barcodes.gg](https://barcodes.gg/about): Barcodes.gg is run by Reactive Systems SL (Spain). Contact: mail@barcodes.gg. - [Support](https://barcodes.gg/support): help by email or on the Barcodes.gg Discord server. - [Terms of service](https://barcodes.gg/legal/terms) and [privacy policy](https://barcodes.gg/legal/privacy). ## Social - [X](https://x.com/BarcodesGG) - [Instagram](https://www.instagram.com/barcodes.gg/) - [Threads](https://www.threads.com/@barcodes.gg) - [Facebook](https://www.facebook.com/people/Barcodesgg/61595831376075/) - [Discord](https://discord.gg/zqyxBPKQM7)