# Sprouts Farmers Market Store Locator Scraper (`datacach/sprouts-farmers-market-store-locator-scraper`) Actor

Scrape all Sprouts Farmers Market store URLs and locations in the US straight from the official sitemap. Fast, reliable store locator data export to JSON, CSV, or Excel — no coding required.

- **URL**: https://apify.com/datacach/sprouts-farmers-market-store-locator-scraper.md
- **Developed by:** [DataCach](https://apify.com/datacach) (community)
- **Categories:** Automation, Developer tools, E-commerce
- **Stats:** 1 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.50 / 1,000 links

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/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Sprouts Store Links

**Sprouts Store Links** is an [Apify Actor](https://apify.com) that **extracts every Sprouts Farmers Market store page URL in the US** directly from Sprouts' public store sitemap. It's a fast, single-request **web scraper** that returns clean, deduplicated store links — each timestamped with when it was collected — as structured **JSON, CSV, or Excel** data, no browser required. It's the ideal first step before running the companion [**Sprouts Farmers Market Store Hours & Address Scraper**](https://apify.com/datacach/sprouts-farmers-market-store-hours-scraper), which turns each link into a full store record (address, phone, geolocation, and hours).

### What does Sprouts Store Links do?

This Actor fetches the [Sprouts store sitemap](https://www.sprouts.com/store-sitemap.xml) once and parses out every `https://www.sprouts.com/store/...` URL it contains — roughly **500 Sprouts Farmers Market locations across the US**. Because the data comes from a single sitemap request rather than a slow store-locator crawl, a full run typically finishes in a few seconds. Every link is deduplicated and stamped with an **extraction date and time**, so you always get a clean, one-row-per-store list of **Sprouts store links** ready for further scraping, mapping, or store-locator automation.

### What can Sprouts Store Links do?

- 🔗 **Extract all Sprouts store page URLs** in one pass, straight from the official sitemap — no crawling of category or search pages needed.
- 🧹 **Automatic deduplication** so every store link appears only once in the output dataset, even across resumed runs.
- 🕒 **Extraction timestamps** on every item (`extraction_datetime`, `extraction_date`) so you always know exactly when each link was collected.
- 🎚️ **Optional result cap** via the `maxResults` input, useful for sampling or testing before a full run.
- 📤 **Export to JSON, CSV, Excel, HTML, or XML** directly from the Apify platform — no extra code required.
- 🔌 **Programmatic access via the Apify API and SDKs** (Python, JavaScript) for pulling results into your own pipeline.
- ⏰ **Scheduling** — run this Actor on a recurring schedule to keep a fresh list of Sprouts store links as new locations open.
- 📊 **Monitoring & alerts** on every run through the Apify platform, so you know immediately if a run fails or returns no data.
- 🔗 **Zapier, Make, and webhook integrations** to pipe fresh store links straight into your own systems.
- 🌐 **Proxy rotation available** through Apify Proxy if you need to scale requests beyond a single sitemap fetch.
- 🧩 **Pairs with the [Sprouts Farmers Market Store Hours & Address Scraper](https://apify.com/datacach/sprouts-farmers-market-store-hours-scraper)** — feed these links in to enrich each store with address, phone, geolocation, and hours.

### What data does Sprouts Store Links extract?

Each dataset item represents a single Sprouts Farmers Market store page URL:

| Field | Type | Description |
|---|---|---|
| `url` | string | Full URL to the Sprouts store page (e.g. `https://www.sprouts.com/store/al/birmingham/us-hwy-280/`) |
| `coordinate` | string | Source label for the link — always `"static source"`, since links are collected from the sitemap rather than a coordinate search |
| `extraction_datetime` | string | UTC timestamp (ISO 8601) of exactly when the link was extracted |
| `extraction_date` | string | Extraction date in `mm-dd-yyyy` format, for quick filtering by day |

### How do I use Sprouts Store Links to scrape Sprouts store URLs?

1. Open the Actor's **Input** tab in Apify Console (or pass input via the API).
2. Optionally set **Max results** (`maxResults`) to cap how many store links are collected. Leave it at `0` to collect all US Sprouts stores.
3. Click **Start** and let the run finish — it usually completes in seconds since it makes a single sitemap request.
4. Open the **Output** tab (or query the dataset via the API) to view, filter, and export the collected Sprouts store links.
5. *(Optional)* Pass the resulting links into the **Sprouts Store Metadata** Actor to pull full store details for each URL.

<!-- TODO: embed a demo GIF or YouTube video URL here showing a run of the Actor and the resulting dataset -->

### Input

Sprouts Store Links takes a single, simple input:

- **Max results** (`maxResults`, integer, default `0`) — the maximum number of unique store links to collect. Set to `0` to collect every store link found in the sitemap (about 500 US stores). Free-plan runs are automatically capped at 10 links regardless of this setting.

<!-- TODO: add a screenshot of the Input tab / input schema form here, e.g. ![Sprouts Store Links input schema](./assets/input-schema.png) -->

Example input:

```json
{
    "maxResults": 0
}
````

### Output example

Each result in the dataset looks like this:

```json
{
    "url": "https://www.sprouts.com/store/al/birmingham/us-hwy-280/",
    "coordinate": "static source",
    "extraction_datetime": "2026-07-21T14:30:00.123456+00:00",
    "extraction_date": "07-21-2026"
}
```

You can download the dataset in various formats such as **JSON, HTML, CSV, or Excel** — directly from the Output tab or via the Apify API.

### Use cases

- **Build a full list of Sprouts Farmers Market store URLs** to feed into a downstream scraper or metadata extractor.
- **Power a store locator or map** with an up-to-date list of Sprouts locations, refreshed on a schedule.
- **Monitor Sprouts' store footprint** by scheduling recurring runs and comparing `extraction_date` values over time to catch new store openings.
- **Feed retail location data** into competitive intelligence, market research, or site-selection tools.
- **Kick off enrichment pipelines** by piping the collected links straight into the [Sprouts Farmers Market Store Hours & Address Scraper](https://apify.com/datacach/sprouts-farmers-market-store-hours-scraper) for address, phone, geolocation, and hours.

### Sprouts-related Actors

| Actor | What it does |
|---|---|
| [**Sprouts Farmers Market Store Hours & Address Scraper**](https://apify.com/datacach/sprouts-farmers-market-store-hours-scraper) | Takes Sprouts store links (like the ones from this Actor) and extracts full store details — store hours, address, phone number, and GPS coordinates. |

### FAQ

#### Is it legal to scrape Sprouts store data?

This Actor only collects **publicly available data** from the same public store sitemap (`store-sitemap.xml`) that Sprouts exposes to search engines. It does not access any authenticated or private content. That said, scraping legality can depend on how the data is used and your local regulations — you are responsible for complying with Sprouts' Terms of Service and applicable laws before using this data. Check out [this blog post on the legality of web scraping](https://www.apify.com/is-web-scraping-legal) to learn more.

#### How many Sprouts stores does this Actor return?

The Sprouts store sitemap currently lists roughly 500 US store pages. A run with `maxResults` set to `0` collects every unique link found; free-plan runs are capped at 10 links per run.

#### Can I access the results via an API?

Yes. Every Apify Actor, including this one, exposes a full [REST API](https://docs.apify.com/api/v2) and client SDKs for Python and JavaScript, so you can trigger runs and fetch Sprouts store links programmatically as part of your own pipeline.

#### Can I run this Actor on a schedule?

Yes. Use [Apify's Scheduler](https://docs.apify.com/platform/schedules) to run Sprouts Store Links automatically — daily, weekly, or on any cron interval — to keep your list of Sprouts store links current as new locations open or old ones close.

#### What happens if the request is blocked?

If Sprouts' anti-bot protection blocks the sitemap request, the run fails with a clear status message instead of silently returning partial or empty data, so you always know whether a run's output is complete.

#### Does this Actor return store addresses, phone numbers, or hours?

No — this Actor only returns store page **URLs** with extraction timestamps. Use the companion [**Sprouts Farmers Market Store Hours & Address Scraper**](https://apify.com/datacach/sprouts-farmers-market-store-hours-scraper) with these links as input to extract full store details.

### Support

Found a bug or have a feature request? Open an issue in the Actor's **Issues** tab in Apify Console. For custom scraping solutions or enterprise needs, reach out through the Actor's page — bespoke Sprouts store data pipelines and integrations are available on request.

# Actor input Schema

## `maxResults` (type: `integer`):

How many unique store links to collect. Set to <code>0</code> to collect every store link from the sitemap (about 500 US stores). On the free plan, results are always capped at 10 links regardless of this value.

## `startIndex` (type: `integer`):

Skip this many store links from the <b>start</b> before saving any. Use it to paginate across runs: if you already have the first 500, set <b>500</b> to begin from link 501 and avoid paying for links you already have. Links are read from the sitemap in a stable document order, so index N is reproducible between runs. The Actor still fetches and walks the sitemap up to that point, so a large value does not make the run faster — it only changes which links are saved. Combined with <b>Max results</b>, the saved range is \[startIndex, startIndex + maxResults). Ignored (forced to 0) on the free plan.

## `excludeUrls` (type: `array`):

Store link URLs you already have. Any URL listed here is <b>never saved again</b>, regardless of where it falls in the sitemap. Unlike <b>Start index</b>, this is order-independent — ideal when you keep a running list and only want new links. Applied after Start index. Free-plan runs may list at most 1 URL here.

## Actor input object example

```json
{
  "maxResults": 50,
  "startIndex": 0,
  "excludeUrls": []
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

# 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 = {
    "maxResults": 50,
    "excludeUrls": []
};

// Run the Actor and wait for it to finish
const run = await client.actor("datacach/sprouts-farmers-market-store-locator-scraper").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 = {
    "maxResults": 50,
    "excludeUrls": [],
}

# Run the Actor and wait for it to finish
run = client.actor("datacach/sprouts-farmers-market-store-locator-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "maxResults": 50,
  "excludeUrls": []
}' |
apify call datacach/sprouts-farmers-market-store-locator-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=datacach/sprouts-farmers-market-store-locator-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Sprouts Farmers Market Store Locator Scraper",
        "description": "Scrape all Sprouts Farmers Market store URLs and locations in the US straight from the official sitemap. Fast, reliable store locator data export to JSON, CSV, or Excel — no coding required.",
        "version": "0.0",
        "x-build-id": "ectYGn3XTnt6LlNFb"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/datacach~sprouts-farmers-market-store-locator-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-datacach-sprouts-farmers-market-store-locator-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/datacach~sprouts-farmers-market-store-locator-scraper/runs": {
            "post": {
                "operationId": "runs-sync-datacach-sprouts-farmers-market-store-locator-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/datacach~sprouts-farmers-market-store-locator-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-datacach-sprouts-farmers-market-store-locator-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "maxResults": {
                        "title": "Max results",
                        "minimum": 0,
                        "type": "integer",
                        "description": "How many unique store links to collect. Set to <code>0</code> to collect every store link from the sitemap (about 500 US stores). On the free plan, results are always capped at 10 links regardless of this value.",
                        "default": 0
                    },
                    "startIndex": {
                        "title": "Start index",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Skip this many store links from the <b>start</b> before saving any. Use it to paginate across runs: if you already have the first 500, set <b>500</b> to begin from link 501 and avoid paying for links you already have. Links are read from the sitemap in a stable document order, so index N is reproducible between runs. The Actor still fetches and walks the sitemap up to that point, so a large value does not make the run faster — it only changes which links are saved. Combined with <b>Max results</b>, the saved range is [startIndex, startIndex + maxResults). Ignored (forced to 0) on the free plan.",
                        "default": 0
                    },
                    "excludeUrls": {
                        "title": "Exclude (already collected)",
                        "type": "array",
                        "description": "Store link URLs you already have. Any URL listed here is <b>never saved again</b>, regardless of where it falls in the sitemap. Unlike <b>Start index</b>, this is order-independent — ideal when you keep a running list and only want new links. Applied after Start index. Free-plan runs may list at most 1 URL here.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
