# Hm Store List (`runtime/hm-store-list`) Actor

This Apify actor scrapes store information from H\&M's store locator page, extracting store names, addresses, phone numbers, hours, and coordinates.

- **URL**: https://apify.com/runtime/hm-store-list.md
- **Developed by:** [scraping automation](https://apify.com/runtime) (community)
- **Categories:** E-commerce, Real estate, Travel
- **Stats:** 10 total users, 0 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $7.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.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/platform/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

## H&M Store Locator & Directory - Complete Store List with Addresses, Phone Numbers & Hours

**Get a complete list of all H&M store locations worldwide** - including addresses, phone numbers, opening hours, and coordinates. Perfect for market research, business planning, and finding the nearest H&M store near you.

### What You'll Get

This tool extracts store information from H&M's website and gives you:

- **Store Names** (e.g., "The Mall of San Juan")
- **Full Addresses** with street addresses and zip codes
- **Phone Numbers** (when available)
- **Opening Hours** (when available)
- **Store Coordinates** (latitude/longitude)

### How Are Coordinates Obtained?

> **Note:** The latitude and longitude ("coordinates") are **not** directly available on the H&M website. They are automatically added by this tool using the [OpenStreetMap Nominatim](https://nominatim.openstreetmap.org/) geocoding service. The tool sends the extracted address to Nominatim, which returns the best-matching coordinates. If the address is precise, the coordinates will be accurate; otherwise, they may be approximate or missing.

### Quick Start - Get H&M Store Data in Minutes

#### Option 1: Use Online (Recommended)
1. Go to [Apify Console](https://console.apify.com/)
2. Search for "H&M Store List" or "H&M Store Locator"
3. Click "Run" 
4. Wait a few minutes for the data to be collected
5. Download your results as JSON, CSV, or Excel

#### Option 2: Run Locally
```bash
## Install and run
npm install
npm start

## Your data will be saved to hm_stores_enhanced.json
````

**💡 Pro Tip**: Use the online version for quick results, or run locally for custom data processing.

### Sample Output

```json
{
  "name": "The Mall of San Juan",
  "address": "1000 Mall of San Juan Boulevard, store number 175 00924",
  "zipCode": "00924",
  "phone": "+1-787-759-1234",
  "hours": "Mon-Sat: 10AM-9PM, Sun: 11AM-7PM",
  "coordinates": {
    "lat": 18.4655,
    "lng": -66.1057
  }
}
```

### Customization Options - Filter by Country & Store Count

You can customize what data you get:

```json
{
  "country": "US",           // Get stores from specific country
  "maxStores": 500,          // Limit number of stores
  "debugMode": false         // Enable detailed logging
}
```

**Popular Countries**: US, UK, Canada, Germany, France, Spain, Italy, Australia

### Supported Countries

- 🇺🇸 United States (US)
- 🇨🇦 Canada (CA)
- 🇬🇧 United Kingdom (UK)
- 🇩🇪 Germany (DE)
- 🇫🇷 France (FR)
- 🇪🇸 Spain (ES)
- 🇮🇹 Italy (IT)
- And many more...

### Common Use Cases - H\&M Store Data Applications

- **Market Research**: Analyze H\&M's store distribution and retail strategy
- **Business Planning**: Find potential locations for your business near H\&M stores
- **Data Analysis**: Study retail patterns, demographics, and consumer behavior
- **Academic Research**: Research retail geography, urban planning, and market analysis
- **Real Estate**: Identify high-traffic retail areas and shopping districts
- **Competitive Analysis**: Understand H\&M's market presence and expansion strategy

### Troubleshooting

#### No Data Found?

- Try running again in a few minutes
- Check if you specified the correct country code
- The website might be temporarily unavailable

#### Slow Performance?

- This is normal - the tool carefully collects data to avoid being blocked
- Larger countries (like US) take longer to process
- Be patient, quality data takes time

#### Wrong Country Data?

- Make sure you're using the correct country code (e.g., "US" for United States)
- Some countries might not have H\&M stores

### Data Updates - Real-Time H\&M Store Information

Store information is collected in real-time from H\&M's official website. The data includes:

- **Current store locations** - Always up-to-date addresses
- **Active store status** - Only currently operating stores
- **Latest contact information** - Current phone numbers
- **Updated opening hours** - Current business hours
- **Store coordinates** - Precise latitude/longitude for mapping

**🔄 Updated Daily**: Data is refreshed regularly to ensure accuracy

### Export Formats - Multiple Download Options

Download your H\&M store data in multiple formats:

- **JSON**: For developers and data analysis
- **CSV**: For Excel and spreadsheet applications
- **Excel**: Ready-to-use spreadsheet format
- **XML**: For enterprise systems and databases
- **Google Sheets**: Direct integration with Google Workspace

**📊 Perfect for**: Excel analysis, database imports, mapping applications, and business intelligence tools

### Need Help? - Support & Documentation

- Check the logs for detailed information
- Try running with `debugMode: true` for more details
- Contact support if you continue having issues
- View our [comprehensive documentation](https://docs.apify.com/) for advanced usage

### Legal Notice - Terms of Use

This tool is for educational and research purposes. Please:

- Respect H\&M's terms of service and robots.txt
- Use data responsibly and legally
- Don't overwhelm their servers with requests
- Follow applicable data protection laws (GDPR, CCPA, etc.)
- Obtain proper authorization for commercial use

### Related Keywords

H\&M store locator, H\&M store finder, H\&M locations, H\&M store directory, H\&M store list, H\&M store addresses, H\&M store hours, H\&M store phone numbers, H\&M retail locations, H\&M store coordinates, H\&M market research, H\&M business data, H\&M store database

***

**🚀 Ready to get your H\&M store data?** Just run the tool and download your results!

**📈 Perfect for**: Market research, business planning, competitive analysis, retail analytics, and academic studies.

# Actor input Schema

## `country` (type: `string`):

Select the country to scrape H\&M stores from. The Actor will retrieve all available store locations for the selected country from H\&M's official store locator. Use the two-letter country code (ISO 3166-1 alpha-2 format).

## `proxy` (type: `object`):

Configure proxy settings to avoid IP blocking and ensure reliable data extraction. Residential proxies are recommended for the best success rate as they appear as regular users. Using Apify Proxy with residential IPs helps prevent rate limiting and ensures consistent access to H\&M's store locator across different regions.

## `maxStores` (type: `integer`):

Limit the number of store locations to scrape (1-10,000). This is useful for testing or when you only need a subset of stores. Set a lower value for faster runs and reduced costs, or use the maximum for complete country coverage. Most countries have fewer than 500 stores.

## Actor input object example

```json
{
  "country": "US",
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  },
  "maxStores": 1000
}
```

# Actor output Schema

## `name` (type: `string`):

The official name of the H\&M store location (e.g., 'H\&M Times Square')

## `address` (type: `string`):

Complete street address including street number, city, state/province, and postal code

## `phone` (type: `string`):

Store contact phone number in local format

## `hours` (type: `string`):

Store operating hours, typically showing daily schedules (e.g., 'Mon-Sat: 10AM-9PM, Sun: 11AM-8PM')

## `coordinates` (type: `string`):

GPS coordinates for mapping and location services (contains lat and lng properties)

## `url` (type: `string`):

The H\&M store locator page URL where this data was extracted from

## `source` (type: `string`):

Indicates the extraction method used (e.g., 'store-locator-page')

## `scrapedAt` (type: `string`):

ISO 8601 timestamp indicating when this store data was extracted

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("runtime/hm-store-list").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("runtime/hm-store-list").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 '{}' |
apify call runtime/hm-store-list --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=runtime/hm-store-list",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Hm Store List",
        "description": "This Apify actor scrapes store information from H&M's store locator page, extracting store names, addresses, phone numbers, hours, and coordinates.",
        "version": "2.3",
        "x-build-id": "yiYsjh5O49kXrUIs2"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/runtime~hm-store-list/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-runtime-hm-store-list",
                "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/runtime~hm-store-list/runs": {
            "post": {
                "operationId": "runs-sync-runtime-hm-store-list",
                "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/runtime~hm-store-list/run-sync": {
            "post": {
                "operationId": "run-sync-runtime-hm-store-list",
                "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": {
                    "country": {
                        "title": "Country",
                        "enum": [
                            "US",
                            "GB",
                            "CA",
                            "AU",
                            "DE",
                            "FR",
                            "IT",
                            "ES",
                            "NL",
                            "SE",
                            "NO",
                            "DK",
                            "FI",
                            "CH",
                            "AT",
                            "BE",
                            "IE",
                            "NZ",
                            "HK",
                            "IN",
                            "JP",
                            "KR",
                            "CN",
                            "MX",
                            "BG",
                            "CZ",
                            "GR",
                            "HU",
                            "IL",
                            "PL",
                            "PT",
                            "RO",
                            "RU",
                            "SK",
                            "RS",
                            "TR"
                        ],
                        "type": "string",
                        "description": "Select the country to scrape H&M stores from. The Actor will retrieve all available store locations for the selected country from H&M's official store locator. Use the two-letter country code (ISO 3166-1 alpha-2 format).",
                        "default": "US"
                    },
                    "proxy": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Configure proxy settings to avoid IP blocking and ensure reliable data extraction. Residential proxies are recommended for the best success rate as they appear as regular users. Using Apify Proxy with residential IPs helps prevent rate limiting and ensures consistent access to H&M's store locator across different regions.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    },
                    "maxStores": {
                        "title": "Maximum Stores",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Limit the number of store locations to scrape (1-10,000). This is useful for testing or when you only need a subset of stores. Set a lower value for faster runs and reduced costs, or use the maximum for complete country coverage. Most countries have fewer than 500 stores.",
                        "default": 1000
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
