# Five Below Stock Checker & API: In-Store Inventory & Pokemon (`s_actors/five-below-stock-checker`) Actor

Five Below stock checker and inventory API: exact units of any product at every Five Below store near a ZIP code or city, plus the online warehouse stock, with store address, hours and distance. Search by keyword, product link or SKU. Scheduled runs = restock alerts.

- **URL**: https://apify.com/s_actors/five-below-stock-checker.md
- **Developed by:** [Superior Actors](https://apify.com/s_actors) (community)
- **Categories:** E-commerce, Automation, Developer tools
- **Stats:** 3 total users, 2 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.99 / 1,000 product at a stores

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### Five Below Stock Checker & API: In-Store Inventory, Pokemon & Restock Alerts

**See how many units of a product every Five Below store near you has right now, and how many the online warehouse has.** For every product you get the nearby stores, nearest first: **exact units on hand**, store name, address, distance, phone, hours, pickup and same-day delivery, plus the price, style, SKU, release date and Five Below's own sales figure. Search by keyword (`pokemon`, `squishmallows`, `pokemon cards`), fivebelow.com product link or **SKU**; check stores by **ZIP code or city** (up to 50 nearest stores each) or by **store number**.

Scheduled runs with **Only report changes** become **Five Below restock alerts**: a row only when a store gets a product back, **gets a delivery (units went up)**, sells out, the price changes, or a **new product appears in your search** (a new Pokemon or Squishmallows drop).

Use cases: track products & prices, get deal & restock alerts, build market datasets of Five Below store inventory. No login, no app: a **Five Below scraper** and **Five Below inventory API** that returns clean JSON, CSV or Excel.

#### What makes it different

| | |
| --- | --- |
| 🔢 **Exact units per store** | `unitsInStock` = how many the store has on hand (109, 21, 0), not just "in stock" |
| 🏬 **Every store near you at once** | All styles of all products at up to 50 nearest stores of each ZIP code or city in a few requests, nearest first, with distance in miles |
| 📦 **Online warehouse stock** | `onlineUnits` = units in Five Below's ship center for online orders, next to the store counts |
| 🧸 **Every style is its own row** | Squishmallows characters, poster designs, "styles may vary" items: each style has its own SKU and its own units |
| 🔔 **Restock alerts with deliveries** | `back_in_stock`, `restocked` (units went up), `out_of_stock`, `price_drop`, `new_item`, with restock history and the usual restock weekday of each store |
| 📅 **Release dates and sales figure** | `releaseDate`, `comingSoon` for products not out yet, `avgUnitsSoldPast14Days` from Five Below's catalog |
| ✅ **Works on the free Apify plan** | No proxy setup, no cookies to paste: the Cloudflare session is handled and saved for the next runs |

#### Example

Input: keyword `pokemon`, ZIP `10001` (Midtown Manhattan), 20 nearest stores. Real run, 20 Oct 2026:

| Product (style) | Price | Store | Miles | Units in store | Online units |
| --- | --- | --- | --- | --- | --- |
| Squishmallows Pokemon Character Plush (Rowlet) | $5 | Times Square NYC | 0.6 | 109 | 1 710 |
| Squishmallows Pokemon Character Plush (Piplup) | $5 | Times Square NYC | 0.6 | 21 | 636 |
| Pokemon Pokeball Puzzle 100-Piece | $6 | Times Square NYC | 0.6 | 25 | 0 |
| Bendon Super Coloring Activity Book (Pokemon) | $5 | 530 Fifth Ave, NYC | 0.9 | 12 | 72 |
| Pokemon Kid-Safe Bluetooth Headphones With Mic | $10 | Times Square NYC | 0.6 | 3 | 0 |
| Pokemon Mens Crew Socks | $5 | North Bergen NJ | 4.4 | 1 | 0 |

126 Pokemon SKUs × 20 stores = 2 520 rows in one run: 46 SKUs were on a shelf in at least one of the stores, the puzzle in every one of them, while the online warehouse had none.

#### Input

| Field | What it does |
| --- | --- |
| **What to do** | *Search products* (keywords) or *Check products* (links or SKUs) |
| **Keywords** | e.g. `pokemon`, `squishmallows`, `pokemon cards`, `stanley cup` |
| **Product links or SKUs** | fivebelow.com product links (`…/products/squishmallows-pokemon-character-plush-9214789?variant=9214790`) or 7-digit SKUs; a link without `?variant=` checks every style |
| **ZIP codes or cities** | `10001`, `Chicago, IL` or `latitude, longitude` |
| **Store numbers** | Exact stores, e.g. `8117` (Times Square NYC); every row shows its `storeNumber` |
| **Radius (miles)**, **Stores per location** | 25 miles and 10 stores by default; up to 200 miles and 50 stores |
| **Max products per search** | Up to 1 000 products per keyword, in Five Below's order |
| **Only in stock**, **Minimum units**, **Maximum price** | Filters: you pay only for returned rows |
| **Only report changes**, **Monitor name** | Restock and drop alerts for scheduled runs |

#### Output

| Field | Example |
| --- | --- |
| `title`, `variant`, `sku`, `brand`, `department`, `category` | Squishmallows™ Pokemon Character Plush, Rowlet, 9214791, Squishmallows, Games & Toys, Squishmallows |
| `unitsInStock`, `inStockAtStore`, `carriedAtStore` | 109, true, true (`false` = the store has no stock record for the product) |
| `onlineUnits`, `inStockOnline` | 1710, true (Five Below's ship center for online orders) |
| `storeNumber`, `storeName`, `storeAddress`, `storeCity`, `storeState`, `storeZip` | 8117, Times Square NYC, 259 W 42nd Street, New York, NY, 10036 |
| `distanceMiles`, `storePhone`, `storeHours`, `storeUrl` | 0.6, (332) 208-6773, Mon-Sat 09:30-21:30, Sun 10:00-20:00, store page |
| `pickupInStore`, `sameDayDelivery`, `storeLatitude`, `storeLongitude` | true, true, 40.757, -73.989 |
| `price`, `priceMax`, `orderLimit`, `productState` | 5.0; `priceMax` only when styles differ in price; 10 per order; available |
| `releaseDate`, `comingSoon`, `avgUnitsSoldPast14Days` | 2025-05-28, false, 95 |
| `image`, `url` | product image, fivebelow.com product page of that style |
| `near`, `query`, `queryType` | 10001, the search or product the row came from |
| `change`, `changes`, `previousUnits`, `previousPrice` | restocked from 4 to 28 units, price_drop from 6.00 (monitoring) |
| `restocksSeen`, `lastRestockAt`, `usualRestockDay` | 3, 2026-10-09T13:10:00Z, Thursday (2 of 3) (monitoring) |

A bad product link, an unknown store number, or a place with no Five Below store nearby returns a row with `error` (free).

#### Pricing

Pay per event: **$0.001** per run and **$0.00249** per returned row: a product at a store ($2.49 per 1 000 rows). Apify Scale plan: 10% less on rows, Business plan and above: 20% less.

fivebelow.com is behind Cloudflare: the first run opens it once in a real browser through a residential proxy and saves the session (**$0.05**, "New Five Below session"). Later runs reuse that session without a browser and do not pay it again until it expires.

| Example | Cost |
| --- | --- |
| 10 Pokemon products (all their styles) at the 10 stores nearest to one ZIP | ~$1.27 (510 rows), +$0.05 on the first run |
| 1 product at the 50 stores near a city | ~$0.13 |
| Restock alert: 5 products near 2 ZIP codes every hour, nothing changed | $0.001 per run |

#### FAQ

**How do I check Five Below stock near me?** Put your ZIP code or city into **ZIP codes or cities** and the product into **Keywords** (or its link or SKU into *Check products*). Each row is one nearby store with the units it has.

**Is the number of units exact?** It is the store's on-hand count that fivebelow.com uses for "check availability in nearby stores". Shelves move during the day, so a store with 1-2 units may be sold out when you arrive.

**Can I check Pokemon cards at Five Below?** Yes: search `pokemon cards` or `pokemon` to get Pokemon TCG items, plush, puzzles and toys at every store near you, with units per store and in the online warehouse.

**When does Five Below restock Pokemon?** Schedule this Actor with **Only report changes**: every delivery shows up as `restocked` or `back_in_stock`, and after a few weeks `usualRestockDay` shows the weekday your stores usually get theirs.

**How do I get Five Below restock alerts?** Add the products (or a search) and your ZIP codes, turn on **Only report changes**, save it as a task and schedule it every 30-60 minutes. Connect email, Slack or [Google Sheets](https://apify.com/s_actors/google-sheets-import-export) in Integrations.

**Where do I find the SKU?** On the product page of fivebelow.com (item number), at the end of the product link, or in the `sku` column of any run.

#### Tips

- Rows = products × styles × stores, so start with a few stores and **Only in stock** or **Minimum units**.
- One request covers up to 100 SKUs at 50 stores: a wide radius costs no extra time, only rows.
- For a watchlist, use *Check products* with product links: the same products every run, no search noise.
- Use a separate **Monitor name** for each scheduled task.

#### Limits

- US Five Below stores only (fivebelow.com).
- Up to 50 stores per ZIP code or city and 50 locations per run; use several ZIP codes for a wider area.
- Searches follow fivebelow.com's own search, which also matches related products (a `needoh` search returns squishy toys of other brands).

#### Related

- [Walgreens Stock Checker](https://apify.com/s_actors/walgreens-stock-checker)
- [CVS Stock Checker](https://apify.com/s_actors/cvs-stock-checker)
- [Dollar General Stock Checker](https://apify.com/s_actors/dollar-general-stock-checker)
- [Target Scraper: store stock with units](https://apify.com/s_actors/target-scraper)
- [Walmart Restock Tracker](https://apify.com/s_actors/walmart-restock-tracker)
- [Barnes & Noble Stock Checker](https://apify.com/s_actors/barnes-noble-stock-checker)
- [Best Buy Stock Checker: in-store inventory by ZIP](https://apify.com/s_actors/best-buy-stock-checker)
- [GameStop Inventory Checker](https://apify.com/s_actors/gamestop-inventory-checker)
- [Sam's Club Stock Checker](https://apify.com/s_actors/sams-club-stock-checker)

#### For AI agents and API

```json
{
    "mode": "products",
    "products": ["https://www.fivebelow.com/products/squishmallows-pokemon-character-plush-9214789", "9156852"],
    "locations": ["10001", "Chicago, IL"],
    "maxStoresPerLocation": 20,
    "onlyInStock": true,
    "onlyChanges": true,
    "monitorName": "five-below-restock"
}
```

Each row is one product style at one store with `unitsInStock`, `onlineUnits`, `distanceMiles` and the store address.

# Actor input Schema

## `mode` (type: `string`):

Search: keywords, every product found with its units at the stores near your locations. Check products: exact products by link or SKU (best for a back-in-stock watchlist).

## `keywords` (type: `array`):

Search mode: what to search on Five Below, one per line (e.g. "pokemon", "squishmallows", "pokemon cards", "stanley cup"). Every style of a product (e.g. each Squishmallow character) is its own SKU and row.

## `products` (type: `array`):

Check products mode: fivebelow.com product links or 7-digit SKUs (the item number on the product page), one per line. A link with ?variant= checks that one style, a link without it every style.

## `locations` (type: `array`):

Where to check, one per line: a US ZIP code (10001), a city with its state ("Chicago, IL") or "latitude, longitude". The nearest stores within "Radius" are checked (up to "Stores per location").

## `storeNumbers` (type: `array`):

Exact Five Below stores to check, one per line: the store number (e.g. 8117 = Times Square NYC; it is in the "storeNumber" column of any run).

## `radiusMiles` (type: `integer`):

How far from each location to look for stores.

## `maxStoresPerLocation` (type: `integer`):

For each ZIP code or city: how many of the nearest stores to check (up to 50).

## `maxProductsPerSearch` (type: `integer`):

Search mode: how many products to take from each keyword, in Five Below's order (a product with several styles gives one SKU per style).

## `onlyInStock` (type: `boolean`):

Return only rows where the store has the product now.

## `minUnits` (type: `integer`):

Return only stores with at least this many units (e.g. 3 to skip "last one on the shelf"). Empty = any.

## `maxPrice` (type: `integer`):

Return only products at or below this price in USD. Empty = any price.

## `onlyChanges` (type: `boolean`):

For scheduled runs. The first run saves units and prices; later runs return only what changed: back in stock at a store, restocked (units went up: a delivery), sold out, price changes, and new products or stores in your searches (e.g. a new Pokemon release). Each row also carries the restocks this monitor has seen and the usual restock weekday. You pay only for the changes returned.

## `monitorName` (type: `string`):

Separate monitors keep separate memory. Use a different name for each scheduled task.

## `maxConcurrency` (type: `integer`):

How many stock requests run at the same time.

## Actor input object example

```json
{
  "mode": "search",
  "keywords": [
    "pokemon"
  ],
  "products": [
    "https://www.fivebelow.com/products/squishmallows-pokemon-character-plush-9214789?variant=9214790"
  ],
  "locations": [
    "10001"
  ],
  "radiusMiles": 25,
  "maxStoresPerLocation": 10,
  "maxProductsPerSearch": 5,
  "onlyInStock": false,
  "onlyChanges": false,
  "monitorName": "default",
  "maxConcurrency": 4
}
```

# Actor output Schema

## `overview` (type: `string`):

One row per product and store: units in stock, online units, address, distance.

## `changes` (type: `string`):

Monitoring: back in stock, restocked, sold out, price changes, new products and stores.

## `details` (type: `string`):

SKU, brand, category, price, release date, sales figure, online stock.

## `stores` (type: `string`):

Store address, phone, hours, services and distance for each row.

## `all` (type: `string`):

Every field of every row.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keywords": [
        "pokemon"
    ],
    "products": [
        "https://www.fivebelow.com/products/squishmallows-pokemon-character-plush-9214789?variant=9214790"
    ],
    "locations": [
        "10001"
    ],
    "maxProductsPerSearch": 5
};

// Run the Actor and wait for it to finish
const run = await client.actor("s_actors/five-below-stock-checker").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "keywords": ["pokemon"],
    "products": ["https://www.fivebelow.com/products/squishmallows-pokemon-character-plush-9214789?variant=9214790"],
    "locations": ["10001"],
    "maxProductsPerSearch": 5,
}

# Run the Actor and wait for it to finish
run = client.actor("s_actors/five-below-stock-checker").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keywords": [
    "pokemon"
  ],
  "products": [
    "https://www.fivebelow.com/products/squishmallows-pokemon-character-plush-9214789?variant=9214790"
  ],
  "locations": [
    "10001"
  ],
  "maxProductsPerSearch": 5
}' |
apify call s_actors/five-below-stock-checker --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,s_actors/five-below-stock-checker"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/VvJYgVx7KqKUECMMS/builds/j0NijTe7yEROapZjQ/openapi.json
