Target Scraper — Products, Prices, Stock & Reviews avatar

Target Scraper — Products, Prices, Stock & Reviews

Pricing

from $2.50 / 1,000 products

Go to Apify Store
Target Scraper — Products, Prices, Stock & Reviews

Target Scraper — Products, Prices, Stock & Reviews

Scrape Target.com search, category, brand and product pages: price, regular price, sale and clearance flags, Circle offers, stock, store pickup, UPC, variants and reviews.

Pricing

from $2.50 / 1,000 products

Rating

0.0

(0)

Developer

Trevor Ortega

Trevor Ortega

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Security

Limited permissions

Share

Target Scraper: Products, Prices, Stock & Reviews

Scrape Target.com search results, category pages, brand pages and product pages into a clean dataset: price, regular price, sale and clearance flags, savings, promotions and Circle offers, rating, review count, online stock, store pickup and in-store stock for any Target store or ZIP code, DPCI, images, badges and rank. Turn on details for the UPC, category path, specifications, description and every variant (color / size) with its own price, and turn on reviews for the review texts.

No browser and no login: the Actor reads the same public JSON that target.com loads in your browser, so one request returns 24 products. Download the results as JSON, CSV or Excel, or pull them through the API into your own app, Google Sheets or an LLM pipeline. You pay per item you get.

What data does Target Scraper extract?

Every product from a search, category or brand page (the result event):

FieldDescription
type"product"
tcin, parentTcinTarget item number (the digits after /A- in the URL) and, for a color / size variant, the item number of its parent product
dpciTarget's store item number (department-class-item, e.g. 057-10-8384), printed on shelf tags
upcBarcode. Filled with Include product details on (or for product URLs); search tiles do not carry it
name, brand, url, imageUrl, imagesTitle, brand, product URL, main image and all images shown on the tile
price, priceText, currencyCurrent price (USD) and the price as displayed
regularPrice, wasPriceTarget's regular price and the struck-through comparison price ("reg $59.99") when shown
priceTypeTarget's own price label: reg, sale, clearance
isOnSale, isClearance, savingsAmount, savingsPercentSale and clearance flags, savings in dollars and percent
priceMin, priceMax, regularPriceMin, regularPriceMaxPrice range when a product is shown as a range ("$139.99 - $169.95")
priceNotee.g. When purchased online
promotions, hasCircleOfferPromotions on the product: {promotionId, message, type, rewardType, rewardValue, thresholdType, thresholdValue, isCircleOffer, channel}, e.g. "Buy 1, get 1 50% off Hanes clothing"
rating, reviewCountAverage rating (0-5) and number of ratings
availability, inStockOnline / shipping status (IN_STOCK, OUT_OF_STOCK, UNAVAILABLE, ...) and an overall boolean
storeAvailabilityStore pickup status at the chosen store (IN_STOCK, UNAVAILABLE, ...); null without a store
fulfillment{shippingStatus, shippingMinDeliveryDate, shippingMaxDeliveryDate, isTwoDayShipping, freeShipping, storeId, storeName, pickupStatus, pickupDate, inStoreStatus, storeQuantity, aisle, soldOut, outOfStockInAllStores}
badgesBestseller, New at Target, Rarely returned, 4k+ bought in last month, ...
isSponsoredtrue for sponsored products. A product shown as an ad and as an organic result is saved once, as organic
categoryId, productType, variantOptionsTarget category id, product type (Headphones) and the variant dimensions ([{name: "Color", values: ["Black", "Pink"]}])
position, pageRank among the tiles of the search (ads included, in display order) and page number
searchTerm, sourceUrl, storeId, scrapedAtProvenance
changeType, previousValuesOnly with Only new or changed items on (see below)

With Include product details on, or for product URLs / TCINs (the extra detail event), each product also gets:

FieldDescription
upc, category, categoryPathBarcode and Target's category breadcrumb (["Electronics & Tech", "Headphones", "Earbuds"])
description, highlightsFull description and the highlight bullets
specifications, warrantyTarget's specification table as a dict ({"Connection Type": "USB-C", ...}) and the warranty text
variants, variantCount, selectedOptionsEvery variant: {tcin, name, options: {Color: "Black"}, price, regularPrice, wasPrice, priceType, upc, dpci, url, imageUrl, isShippingAvailable, isSoldOut}; for a variant, its own option values
ratingDistribution, reviewsWithText, recommendedPercentage, questionCount, secondaryRatings1-5 star breakdown, written reviews, "would recommend" share, Q&A count, sub-ratings (quality, value, ...)
isMarketplace, soldByTarget Plus marketplace flag and the seller (Target for Target's own items)
returnPolicy, packageDimensions, purchaseLimit, origin, departmentReturn window and method, package size and weight, order limit, Imported / Made in the USA, Target department

With Include reviews on (the review event), one item per review:

FieldDescription
type"review"
tcin, productName, productUrlReviewed item (for variants Target keeps reviews on the parent product)
reviewId, rating, title, text, submittedAt, modifiedAtReview id, stars (1-5), title, text, ISO dates
reviewerNameReviewer's nickname as Target shows it
verifiedPurchase, recommended, badges, isIncentivizedVerified purchaser flag, "would recommend", badges, incentivized review flag
positiveFeedback, negativeFeedbackHelpful / not helpful votes
photosCount, photos, videosCountCustomer photos (image URLs) and number of videos
secondaryRatingsSub-ratings the reviewer gave ({"quality": 5, "value": 4})
isSyndicated, syndicatedFromReviews copied from the brand's own site (sharkninja.com)
sellerResponse, sellerResponseBy, sellerResponseDateBrand / seller reply when present

How to use Target Scraper

  1. Type one or more Search terms (one per line), and/or paste Start URLs: search pages (/s?searchTerm=...), category pages (/c/.../-/N-5xteg), brand pages (/b/.../-/N-...) or product pages (/p/.../-/A-89827259). Filters you applied on target.com stay in the URL and are respected. You can also list TCINs in Product IDs.
  2. Optionally pick Sort by, a Min / Max price, and a Store ID or ZIP code for store pickup stock.
  3. Set Max items to cap the run (and the cost). Products and reviews both count. With several searches, Max products per search gives each its share.
  4. Turn on Include product details and/or Include reviews only if you need them.

Input example

{
"searchTerms": ["air fryer"],
"startUrls": [
{ "url": "https://www.target.com/c/headphones-electronics-tech/-/N-5xteg" },
{ "url": "https://www.target.com/p/apple-earpods-usb-c/-/A-89827259" }
],
"maxItems": 200,
"sortBy": "bestselling",
"zipCode": "10001",
"includeDetails": true,
"includeReviews": false
}

Output example

{
"type": "product",
"tcin": "85978609",
"parentTcin": null,
"dpci": "057-10-8384",
"upc": null,
"name": "Apple AirPods Pro 3 Wireless Earbuds with Active Noise Cancellation",
"brand": "Apple",
"url": "https://www.target.com/p/ap2022-true-wireless-bluetooth-headphones/-/A-85978609",
"imageUrl": "https://target.scene7.com/is/image/Target/GUEST_d1b8c229-751b-430b-a0fb-521d7777a784",
"price": 199.99,
"regularPrice": 249.99,
"wasPrice": 249.99,
"priceText": "$199.99",
"priceType": "sale",
"isOnSale": true,
"isClearance": false,
"savingsAmount": 50.0,
"savingsPercent": 20.0,
"currency": "USD",
"promotions": [
{ "promotionId": "584387474", "message": "Get the AirPods Pro 3 starting at $24/mo.", "type": "No Discount",
"rewardType": "NoDiscount", "rewardValue": 0.0, "isCircleOffer": false, "channel": "online_and_store" }
],
"hasCircleOffer": false,
"rating": 3.92,
"reviewCount": 2192,
"availability": "IN_STOCK",
"inStock": true,
"storeAvailability": "IN_STOCK",
"fulfillment": {
"shippingStatus": "IN_STOCK", "shippingMinDeliveryDate": "2026-10-11", "shippingMaxDeliveryDate": "2026-10-11",
"isTwoDayShipping": true, "freeShipping": true, "storeId": "1176", "storeName": "Arlington Heights",
"pickupStatus": "IN_STOCK", "pickupDate": "2026-10-10", "inStoreStatus": "IN_STOCK", "storeQuantity": 10,
"aisle": "D 30", "soldOut": false, "outOfStockInAllStores": false
},
"badges": ["Bestseller"],
"isSponsored": false,
"categoryId": "4sbu8",
"productType": "Headphones",
"position": 15,
"page": 1,
"searchTerm": "headphones",
"storeId": "1176",
"scrapedAt": "2026-10-10T07:38:43+00:00"
}

A review item:

{
"type": "review",
"tcin": "91747218",
"productName": "Beats Solo 4 Bluetooth Wireless On-Ear Headphones - Cloud Pink",
"productUrl": "https://www.target.com/p/beats-solo-4-bluetooth-wireless-on-ear-headphones-cloud-pink/-/A-91747218",
"reviewId": "09dd01b0-6057-4efb-ab8b-183f9dcf53fa",
"rating": 5.0,
"title": "Worth $",
"text": "The presentation/ unboxing was my favorite part sounds grate would recommend",
"submittedAt": "2026-09-26T14:21:43.000+00:00",
"modifiedAt": "2026-09-28T09:58:49.000+00:00",
"reviewerName": "John",
"verifiedPurchase": true,
"recommended": true,
"badges": ["verifiedPurchaser"],
"positiveFeedback": 0,
"negativeFeedback": 2,
"photosCount": 0,
"photos": [],
"isSyndicated": false,
"sellerResponse": null
}

How much does it cost?

Pay per item, no subscription:

EventPriceWhen
Product (result)$0.0025Every product saved: price, stock, rating, promotions, images
Product details (detail)$0.0015Extra, per product whose details are fetched (Include product details, product URLs, TCINs)
Review (review)$0.0005Every review saved

1,000 products from search cost $2.50 (with details $4.00). Platform usage is small: the Actor runs on 512 MB and reads 24 products per request through Apify's datacenter proxy. In our test, 1,300 products took 124 requests and less than $0.01 of platform usage.

How to scrape Target search results by keyword

Type the keywords into Search terms. Each term is read page by page (24 products per page) until Max items is reached. Target shows at most 1,200 products for one search; when you ask for more, the Actor splits the search into price ranges automatically and reads each range, so large categories can be collected completely. Results are deduplicated by TCIN.

How to track Target prices, sales and clearance

Every product carries price, regularPrice, wasPrice, priceType (reg / sale / clearance), isOnSale, isClearance, savings and promotions. Filter a category for deals by pasting a target.com URL with the "Deals" filter applied, or use Sort by and Min / Max price. For a fixed list of products, put their TCINs into Product IDs.

How to check Target store stock and pickup availability

Set Store ID (e.g. 1176) or a ZIP code (the nearest store is used). Every product then gets storeAvailability and fulfillment with pickup status, pickup date, in-store status, quantity at that store and the aisle. Without a store you still get online / shipping availability and delivery dates.

How to scrape Target product reviews

Turn on Include reviews and set Max reviews per product. Reviews are read 50 per request in the order you choose (most recent, most helpful, highest or lowest rating). Each review includes the reviewer's nickname as Target shows it, verified purchaser flag, helpful votes, photos, and the brand's reply. Use Only reviews newer than (7 days, 2026-10-01) to collect only recent reviews.

Monitor changes on a schedule

Turn on Only new or changed items and the Actor remembers what earlier runs of the same input returned. Each run then outputs only products that are new in the results or whose price, regular price or online availability changed (plus store availability when a store is set, and the rating count when reviews are on). Unchanged products are dropped before anything is saved and before details or reviews are requested, so they are not charged. Save the input as a task and add a Schedule to it in Apify Console (Schedules → Create new, e.g. daily). Every output item carries changeType (new or changed), and changed products carry previousValues, e.g. {"price": 24.99, "availability": "IN_STOCK"} for a product that dropped to $19.99 and sold out.

Tips:

  • Max items becomes the watched window: that many products of the listing are checked each run.
  • Turn Include sponsored products off so rotating ads do not show up as new.
  • Target's relevance order shifts slightly between runs, so the first runs may report a few products that moved into the window as new; each one is reported once.
  • With reviews on, only reviews not returned before are output.
  • Monitoring key keeps several schedules on the same search separate.

Does it work without login or a browser?

Yes. Everything comes from Target's public pages and the public JSON they load; no account, cookies or browser are needed, and nothing behind a login is collected.

Proxy note

The default Apify datacenter proxy works. Target protects its APIs with PerimeterX; the Actor identifies its requests the way Target's mobile app does and retries a blocked request with another IP, so in our tests every request succeeded on the first try. No Unblocker or residential proxy is needed.

Integrations and API

Use the run in Zapier, Make, n8n or Google Sheets, or call it from Python / Node.js with the Apify client. See the API tab for ready-made snippets.

The Actor collects only information Target publishes on its public pages: product data, prices, stock and public reviews with the nickname the reviewer chose to show. It does not log in and does not collect anything behind a login. You are responsible for how you use the data and for complying with Target's terms and applicable law (for example data-protection rules when you store reviewer nicknames).

Support

Found a bug or need a field added? Open an issue in the Issues tab; it is usually answered within a day.

Found it useful?

A ★ review on this Actor's Apify Store page helps other users find it and tells us what to improve. Issues and feature requests are welcome in the Actor's Issues tab.