Storage Unit Pricing Scraper avatar
Storage Unit Pricing Scraper

Pricing

Pay per event

Go to Apify Store
Storage Unit Pricing Scraper

Storage Unit Pricing Scraper

Automatically extract storage unit pricing data from storage facility websites. Simply provide facility URLs and get structured pricing data ready for analysis.

Pricing

Pay per event

Rating

5.0

(2)

Developer

Lumen Limitless

Lumen Limitless

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

Automatically extract storage unit pricing data from storage facility websites. Simply provide facility URLs and get structured pricing data ready for analysis.

What Does This Scraper Do?

This scraper visits storage facility websites and extracts detailed pricing information for storage units. It works with different website layouts without requiring any technical configuration.

Information Extracted:

  • Unit sizes (e.g., "10x10", "5x5")
  • Monthly rental prices
  • Unit features (climate control, drive-up access, 24/7 access, etc.)
  • Availability status
  • Facility details (name, address, location)

Works With Different Website Designs:

  • Pricing tables
  • Card-based layouts
  • Custom layouts
  • JavaScript-powered websites

Handles Common Challenges:

  • Dynamic content that loads after the page opens
  • Various price formats ($125/mo, $125.00 per month, etc.)
  • Different website structures and designs

Input Structure

Required Fields

Start URLs (startUrls)

  • List of storage facility URLs to scrape
  • Provide the pricing or units page URL for best results

Example:

{
"startUrls": [
{ "url": "https://premierstoragefl.com/premier-storage-one/" },
{
"url": "https://www.extraspace.com/storage/facilities/us/florida/miami/123/"
}
]
}

Optional Settings

Proxy Configuration (proxyConfiguration)

  • Controls proxy settings for web requests
  • Default: Apify Proxy is enabled for reliability
  • Most users can leave this at the default setting

Example:

{
"proxyConfiguration": {
"useApifyProxy": true
}
}

Extraction Strategy (extractionStrategy)

  • Determines how the scraper finds pricing data
  • Options:
    • "auto" - Try all methods (recommended)
    • "table-first" - Start with table detection
    • "card-first" - Start with card-based detection
  • Default: "auto"

Example:

{
"extractionStrategy": "auto"
}

Output Structure

The scraper produces one record per facility URL with all the extracted pricing data.

What You Get

Facility Information:

  • facilityUrl - The webpage that was scraped
  • facilityName - Name of the storage facility (if found)
  • facilityAddress - Physical location (if found)
  • pageTitle - Title of the webpage
  • totalUnitsFound - How many storage units were found
  • scrapedAt - Date and time when data was collected
  • units - List of all storage units with their details

For Each Storage Unit:

  • unitId - Unique identifier for the unit
  • dimensions - Size of the unit (e.g., "10x10", "5x5")
  • sizeCategory - Category like "Small", "Medium", "Large"
  • price - Monthly rental price as a number
  • priceText - Original price text from the website
  • features - List of amenities (climate control, drive-up access, etc.)
  • isAvailable - Whether the unit is currently available
  • facilityUrl - Source URL (same as facility-level)
  • scrapedAt - When this data was collected

Example Output

{
"facilityUrl": "https://premierstoragefl.com/premier-storage-one/",
"facilityName": "Premier Storage One",
"facilityAddress": "123 Main St, Miami, FL 33101",
"pageTitle": "Premier Storage One - Unit Sizes & Pricing",
"totalUnitsFound": 3,
"scrapedAt": "2025-01-13T10:30:00.000Z",
"units": [
{
"unitId": "5x5_indoor_1",
"dimensions": "5x5",
"sizeCategory": "Small",
"price": 75.0,
"priceText": "$75/mo",
"features": ["Indoor", "Climate Control"],
"isAvailable": true,
"facilityUrl": "https://premierstoragefl.com/premier-storage-one/",
"scrapedAt": "2025-01-13T10:30:00.000Z"
},
{
"unitId": "10x10_climate_2",
"dimensions": "10x10",
"sizeCategory": "Medium",
"price": 125.0,
"priceText": "$125/month",
"features": ["Climate Control", "Drive-Up Access"],
"isAvailable": true,
"facilityUrl": "https://premierstoragefl.com/premier-storage-one/",
"scrapedAt": "2025-01-13T10:30:00.000Z"
},
{
"unitId": "10x20_outdoor_3",
"dimensions": "10x20",
"sizeCategory": "Large",
"price": 200.0,
"priceText": "$200.00 per month",
"features": ["Outdoor", "Drive-Up Access", "24/7 Access"],
"isAvailable": false,
"facilityUrl": "https://premierstoragefl.com/premier-storage-one/",
"scrapedAt": "2025-01-13T10:30:00.000Z"
}
]
}

Supported Storage Facilities

The scraper has specialized support for these storage facility providers:

  • Extra Space Storage (extraspace.com)
  • Premier Storage (premierstoragefl.com)
  • Go Store It (gostoreit.com)
  • U-Stor (u-stormanagement.com)
  • NSA Storage (nsastorage.com)
  • Storage King USA (storagekingusa.com)
  • U-Haul Self Storage (uhaul.com)
  • Public Storage (publicstorage.com)
  • CubeSmart (cubesmart.com)

The scraper also works with other storage facility websites using generic extraction methods. If a facility isn't on this list, the scraper will automatically attempt to extract pricing data using multiple detection strategies.

Need Support for a Different Facility?

If you need to extract data from a storage facility that isn't currently supported or if the generic extraction isn't working well for a specific site, please open an issue on the actor's page with:

  1. The facility name and website URL
  2. A link to the pricing/units page you want to scrape
  3. Any specific challenges you're encountering

We're actively expanding support for more storage facility providers and welcome feedback on facilities you'd like to see added.

Usage Examples

Single Facility

Scrape pricing from one storage facility:

{
"startUrls": [{ "url": "https://premierstoragefl.com/premier-storage-one/" }]
}

Multiple Facilities

Scrape several facilities at once:

{
"startUrls": [
{ "url": "https://premierstoragefl.com/premier-storage-one/" },
{
"url": "https://www.extraspace.com/storage/facilities/us/florida/miami/123/"
},
{ "url": "https://www.storagekingusa.com/location/miami" }
]
}

Using a Specific Strategy

If you know the website uses tables for pricing:

{
"startUrls": [{ "url": "https://premierstoragefl.com/premier-storage-one/" }],
"extractionStrategy": "table-first"
}

Tips for Best Results

  1. Use the pricing or units page - URLs like /pricing, /units, /rates typically work best
  2. Start with "auto" strategy - Let the scraper try all detection methods automatically
  3. Test with one URL first - Verify the output before scraping many facilities
  4. Check facility websites - Make sure pricing is visible on the webpage (not login-required)

What the Scraper Can Handle

  • Pricing displayed in tables
  • Card-based pricing layouts
  • JavaScript-powered websites
  • Various price formats and currencies
  • Most major storage facility website platforms

Limitations

The scraper cannot extract data from:

  • Websites requiring login to see pricing
  • "Call for pricing" pages (no numeric prices to extract)
  • Prices embedded in images
  • PDF-only pricing documents

Common Questions

Why are no units found?

Possible reasons:

  • Pricing isn't visible on that specific page (try a different URL like /pricing or /units)
  • The website requires login to see pricing
  • Pricing is shown only as "Call for pricing" text
  • The website has an unusual layout

What to try:

  • Visit the URL manually to confirm pricing is visible
  • Try different pages on the same website
  • Make sure you're using a direct link to a pricing page

Some prices look wrong or are missing

Common causes:

  • Non-standard price formatting
  • Promotional vs regular pricing displayed differently
  • Complex table structures

What to check:

  • Look at the priceText field to see the original text from the website
  • Try a different extraction strategy (table-first or card-first)
  • Verify the facility actually shows prices on that page

Can I run this on a schedule?

Yes! Apify allows you to schedule the scraper to run automatically:

  1. Go to your actor run page
  2. Click "Schedule"
  3. Choose how often (daily, weekly, etc.)
  4. The scraper will run automatically and save results

How do I get the results?

Results are automatically saved to a dataset. You can:

  • Download as JSON, CSV, or Excel
  • Export to Google Sheets
  • Access via Apify API
  • Set up webhooks for automatic delivery

How to Use the Data

Export to Spreadsheets

  1. Run the scraper
  2. Go to the results (dataset)
  3. Click "Export" and choose your format:
    • Google Sheets
    • Excel (XLSX)
    • CSV

Monitor Price Changes

Run the scraper on a schedule (daily, weekly) to track pricing changes over time. Each run saves a new dataset that you can compare with previous runs.

Integrate with Your Application

Use Apify's API or webhooks to automatically receive data:

  • Webhooks: Get notified when scraping completes
  • API: Trigger scrapes and fetch results programmatically
  • Integrations: Connect with tools like Slack, Discord, or custom applications

Support

  • Found an issue? Contact support through the Apify platform
  • Have a suggestion? We're actively improving this scraper
  • Need help? Check the Common Questions section above or reach out to Apify support

About

This scraper is built using modern web scraping technology to reliably extract storage unit pricing data from various facility websites. It uses browser automation to handle JavaScript-powered sites and multiple detection strategies to work with different website layouts.

License: Apache-2.0