Crexi Commercial Real Estate Scraper
Pricing
from $1.30 / 1,000 results
Crexi Commercial Real Estate Scraper
[๐ฐ $1.30 / 1K] Extract commercial real estate listings from Crexi.com โ addresses, asking prices and rents, square footage, cap rates, broker contacts and full-resolution photos. Search any city, county, ZIP or state, and filter by deal type, property type, price or lease rate.
Pricing
from $1.30 / 1,000 results
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
1
Bookmarked
46
Total users
14
Monthly active users
17 days ago
Last modified
Categories
Share
Pull commercial real estate listings from Crexi.com at scale โ addresses and coordinates, asking prices and asking rents, square footage, lot size, broker and brokerage identity, cap rates, occupancy, and full-resolution photo galleries across for-sale, for-lease, and auction inventory in all 50 US states plus Washington DC. Built for commercial real estate investors, lenders, brokers, market researchers, and lead-generation agencies who need structured Crexi data without manually clicking through thousands of search pages.
Why This Scraper?
- 10 property categories for sale, 6 for lease โ Office, Retail, Industrial, Land, Special Purpose and Healthcare work on both sides; Multifamily, Hospitality, Self Storage and Mobile Home Park are sale-side only because Crexi does not carry them for lease. Picking Healthcare sweeps up both medical office and senior living inventory in one pass.
- 68 distinct property subtypes come back labelled โ Warehouse, Flex, Distribution, Apartment Building, Storefront, Medical Office, Auto Shop, Manufacturing and 60 more, measured across a 4,704-listing sample.
- All 50 US states + Washington DC โ one nationwide hotel run returned listings from 45 different states in a single 240-row pull. No per-state configuration.
- The location box understands more than city names โ type a county (
Travis County, TX), a ZIP (78702), several places at once (Miami, Orlando, TampaorAustin, TX; Dallas, TX), or a short form likeNYCorWashington DC. Every name is checked against Crexi's own place index and repaired before the search runs, so a spelling that would return nothing gets corrected instead. - Broker identity on 100% of sale and auction rows โ name, Crexi broker ID and a direct link to the broker's profile page, filled on 3,577 of 3,577 sale and auction listings measured, with the brokerage company on 99.5%. Lease listings carry the brokerage on 95%.
- Photo galleries averaging 15 images per listing at 3000ร2000 โ median 10 shots, largest gallery 117. Sale and auction rows return the whole array; lease rows return the lead photo.
- Asking rents unit-tagged so monthly and yearly quotes never blur โ of 504 published lease rents measured, 323 came back
$/SF/YRand 164$/SF/MO, plus per-acre monthly and yearly quotes. A rent Crexi publishes ambiguously is flagged as ambiguous rather than guessed at. - Two range filters matched to how Crexi actually quotes โ a total asking price for sale and auction listings, and a separate $/SF/YR rate for lease. Monthly rents are converted for you, so a $20โ$40 rate band also catches a $2.50/SF/MO suite. Setting either range drops the contact-for-pricing listings so every row you get back carries a number you can screen on.
- Paste any Crexi search URL and keep its filters โ property type, price, lease rate, city, county, ZIP and state all carry across, including multi-city and multi-ZIP links.
Use Cases
Investment Sourcing
- Screen hundreds of NNN retail deals by cap rate and asking price in one run
- Find value-add multifamily assets below a price ceiling in target markets
- Identify industrial listings with high occupancy across Sun Belt states
- Pull auction listings to build a distressed-asset opportunity pipeline
Market Research
- Map commercial inventory by state, county, and property type
- Track average asking prices and cap rates across MSAs
- Benchmark property subtypes (flex vs. warehouse vs. manufacturing) within a market
- Monitor new listing activity over time by running on a schedule
Lead Generation
- Build broker contact lists by market and property type (name + brokerage + profile URL)
- Identify active listing agents in target geographies for outreach campaigns
- Find owner-represented listings (no brokerage listed) for direct approaches
Portfolio Monitoring
- Watch specific markets for new inventory matching your buy-box
- Cross-reference listings against your existing portfolio addresses
- Track price reductions by comparing runs over time
Lender Underwriting
- Pull comparable sales and lease comps by property type, subtype, and geography
- Gather occupancy and year-built data for underwriting models
- Collect cap rate data points to calibrate discount-rate assumptions
Competitive Analysis
- Benchmark competitor brokerages by listing volume and geography
- Identify which property categories dominate inventory in a given state
- Analyze listing age distribution to spot slow-moving product types
Getting Started
Simplest โ Browse by State and Deal Type
{"dealType": "sale","state": "CA"}
Returns all for-sale commercial listings in California (up to the default 200-result cap).
Mid-level โ Add Property Type and Price Filters
{"dealType": "sale","state": "TX","propertyTypes": ["Office", "Retail"],"priceMin": 1000000,"maxResults": 100}
Returns Texas office and retail listings priced at $1M or above, capped at 100 results.
Location-Level โ Target a City, County, ZIP, or Several
{"dealType": "sale","city": "Travis County, TX","propertyTypes": ["Multifamily"],"maxResults": 50}
Returns multifamily listings across Travis County, Texas. The same field accepts "Austin", "78702", "NYC", or a list like "Miami, Orlando, Tampa". Add the State filter for an extra layer of precision.
Lease with a Rate Band
{"dealType": "lease","state": "IL","propertyTypes": ["Office"],"leaseRateMin": 15,"leaseRateMax": 35,"maxResults": 200}
Returns Illinois office space asking $15โ$35 per square foot per year. Suites quoted per month are converted before the comparison, so nothing is missed.
Advanced โ Paste a Crexi URL Directly
{"startUrls": ["https://www.crexi.com/properties?states=CA&types=Office"],"maxResults": 500}
Any filters you applied in the Crexi UI are preserved. Paste the URL from your browser and the scraper inherits your exact search configuration.
Input Reference
Search
| Parameter | Type | Default | Description |
|---|---|---|---|
city | String | (none) | Location. A city (Austin, Austin, TX), a county (Travis County, TX), a ZIP (78702), or several separated by commas or semicolons (Miami, Orlando, Tampa). Short forms like NYC and Washington DC work. Ignored when startUrls is provided. |
startUrls | List | (empty) | One or more Crexi.com search result URLs. Whatever you filtered on Crexi (property type, price, lease rate, city, county, ZIP, state) is honoured. When provided, these replace Location and every Filters setting, which are then ignored; only maxResults still applies. |
Filters
| Parameter | Type | Default | Description |
|---|---|---|---|
dealType | Select | For Sale | For Sale, For Lease, Auction, or All Deal Types. "All Deal Types" returns up to maxResults Sale AND up to maxResults Lease rows (up to 2ร total); it does not add auctions. Only a few dozen auctions are live at any moment, so an auction run finishes well under your maxResults โ that is the whole auction market, not a truncated run. |
propertyTypes | Multi-select | (all) | Limit to one or more of: Multifamily, Office, Retail, Industrial, Land, Hospitality, Special Purpose, Healthcare, Self Storage, Mobile Home Park. Leave empty to include all types. Crexi lists Multifamily, Hospitality, Self Storage and Mobile Home Park for sale only, and the run says so instead of returning nothing. |
state | Select | (all states) | Limit results to a specific US state (Alabama through Wyoming + Washington DC). Leave blank to search nationwide. |
priceMin | Integer | (none) | Minimum asking price in USD. Applies to sale and auction listings only. Leave blank for no minimum. |
priceMax | Integer | (none) | Maximum asking price in USD. Applies to sale and auction listings only. Leave blank for no maximum. |
leaseRateMin | Integer | (none) | Minimum asking rent in dollars per square foot per year, for lease listings only. Monthly quotes are converted automatically. Leave blank for no minimum. |
leaseRateMax | Integer | (none) | Maximum asking rent in dollars per square foot per year, for lease listings only. Monthly quotes are converted automatically. Leave blank for no maximum. |
Sale and lease are quoted in different units, so they get their own range fields: a total asking price for sale and auction listings, a per-square-foot annual rent for lease. Set a range on the wrong side and the run tells you it could not apply it rather than dropping it in silence. Setting either range also excludes listings with no published number, because an undisclosed figure cannot be matched against your range. Leave them blank to include contact-for-price listings.
Limits
| Parameter | Type | Default | Description |
|---|---|---|---|
maxResults | Integer | 200 | Maximum listings to collect. The last page is kept whole, so the final count may slightly exceed this. Set to 0 for no cap. |
Output
Each row represents one commercial listing. Below is a representative for-sale record:
{"id": 751699,"name": "T-Mobile Outparcel to Walmart","status": "On-Market","dealType": "Sale","listingUrl": "https://www.crexi.com/properties/751699/california-walmart-plaza-outparcel","propertyType": "Retail","propertySubType": "Shopping Center","description": "<p>The <strong>Walmart Plaza Shopping Center</strong>...</p>","activatedAt": "2022-02-01T05:40:50.2Z","updatedAt": "2026-04-04T20:08:42.857Z","address": "2920 Main St","city": "Susanville","state": "CA","zip": "96130","county": "Lassen County","latitude": 40.40804333639934,"longitude": -120.6347412391219,"price": 1140000.0,"priceFormatted": "$1,140,000","pricePerSqft": 175.38,"leaseRate": null,"sqft": 6500,"lotSizeAcres": 1.38,"units": 3,"yearBuilt": 1997,"capRate": null,"occupancy": 50.0,"brokerName": "Heath Charamuga","brokerId": 7123,"brokerProfileUrl": "https://www.crexi.com/brokers/heathc","brokerageName": "Epic Real Estate Advisors, Inc","brokerageLogoUrl": "https://images.crexi.com/user-accounts/...","primaryImageUrl": "https://images.crexi.com/assets/751699/...jpg","imageUrls": ["https://images.crexi.com/assets/751699/...jpg", "..."]}
Coverage figures below are real fill rates, measured over 4,704 listings collected across dozens of live runs โ 3,265 for sale, 1,127 for lease, 312 at auction. Brokers choose which numbers to publish, so no field except the core identity set is on every row.
Core & Identity Fields
| Field | Type | Coverage | Description |
|---|---|---|---|
id | Integer | 100% | Crexi listing ID |
name | String | 100% | Listing title as shown on Crexi |
status | String | 100% | On-Market, Active, Auction, Call For Offers or Highest & Best |
dealType | String | 100% | Sale, Lease, or Auction |
listingUrl | String | 100% | Full URL to the listing on Crexi |
description | String | 99%+ | Full listing description (may include HTML) |
activatedAt | String | 100% | ISO 8601 date when listing went live |
updatedAt | String | Sale & auction only | ISO 8601 date of last update |
Address & Location Fields
| Field | Type | Coverage | Description |
|---|---|---|---|
address | String | 100% | Street address |
city | String | 100% | City |
state | String | 100% | 2-letter state code |
zip | String | 100% | ZIP code |
county | String | 83% sale ยท 54% lease ยท 95% auction | County name |
latitude | Float | 99.9% | Latitude coordinate |
longitude | Float | 99.9% | Longitude coordinate |
Pricing & Financial Fields
| Field | Type | Coverage | Description |
|---|---|---|---|
price | Float | 59% sale ยท 100% auction | Asking price in USD. The rest are contact-for-pricing. |
priceFormatted | String | matches price | Human-readable price (e.g. $1,140,000) |
pricePerSqft | Float | 25% of sale listings | Price per square foot exactly as the broker published it. Sale listings only โ Crexi does not publish it on auction or lease rows. |
leaseRate | String | 45% of lease listings | Published asking rent with its unit and period (e.g. $14.40/SF/YR, $1.85/SF/MO, $3,950/AC/MO). Ranges appear as $18 - $24/SF/YR. Where the broker filed some suites yearly and others monthly at the same figure, the period is marked unknown ($2.05/SF (YR or MO)) instead of being guessed. Null on sale listings. |
capRate | Float | 20% sale ยท 2% auction | Capitalization rate as a percentage |
occupancy | Float | 30% sale ยท 59% auction | Occupancy percentage |
Property Details Fields
| Field | Type | Coverage | Description |
|---|---|---|---|
propertyType | String | 100% | Top-level category (e.g. Retail, Industrial) |
propertySubType | String | 95% sale ยท 92% auction | One of 68 observed subtypes (Shopping Center, Warehouse, Medical Office, Flex, โฆ). Not published on lease listings. |
sqft | Integer | 88% sale ยท 99.6% lease ยท 64% auction | Rentable square footage |
lotSizeAcres | Float | 87% sale ยท 100% auction | Lot size in acres. Listings that quote the lot in square feet are converted, so the column is always acres. |
units | Integer | 26% sale ยท 24% auction | Number of rentable units or suites โ apartments, storefronts, office suites, flex bays. Published on every property category, not just multifamily. |
yearBuilt | Integer | 57% sale ยท 49% auction | Year of construction. Roughly two sale listings in five do not publish it at all. |
Broker Fields
| Field | Type | Coverage | Description |
|---|---|---|---|
brokerName | String | 100% sale & auction | Listing broker's name |
brokerId | Integer | 100% sale & auction | Crexi internal broker ID |
brokerProfileUrl | String | 100% sale & auction | URL to the broker's Crexi profile |
brokerageName | String | 99.5% sale ยท 95% lease | Brokerage company name |
brokerageLogoUrl | String | 86% | URL to the brokerage logo image |
Media Fields
| Field | Type | Coverage | Description |
|---|---|---|---|
primaryImageUrl | String | 99.4% sale ยท 100% lease & auction | Main listing photo (3000ร2000 resolution) |
imageUrls | Array | 99.4% sale ยท 100% auction | Every photo on the listing at full resolution โ 15 per listing on average, up to 117. Lease listings publish only the lead photo. |
Lease rows are a thinner record than sale rows, because Crexi publishes less on them. propertySubType, yearBuilt, capRate, occupancy, units, lotSizeAcres, price, updatedAt, the broker name/ID/profile URL and the full photo array are sale-and-auction only; pricePerSqft is sale-only. Lease listings make up for it with near-perfect square footage (99.6%), the asking rent, and the lead photo on every row.
Tips for Best Results
- For lease searches, set
dealTypetoFor Leaseโ lease results are not included in the default For Sale run. If you need both deal types, select All Deal Types; note that this adds lease rows, not auction rows. - Type a county or ZIP into the location box, not just a city โ
Travis County, TXcovers Austin, Pflugerville, Manor, Buda and Spicewood in one search, which a city name alone would miss.78702narrows to a single neighbourhood. - Paste a pre-filtered Crexi URL for complex searches โ apply all your location, property type, and price filters directly on Crexi.com, then paste the resulting URL into
startUrls. This is the most reliable method for highly specific queries. - Set
maxResultsto0for full market pulls โ the default cap of 200 is designed for quick test runs. Removing the cap lets you collect every matching listing across hundreds of pages. - Set a price or rate range to drop contact-for-price listings โ roughly 4 in 10 sale listings and better than half of lease listings are quoted only on request. Any
priceMin/priceMaxon sale, orleaseRateMin/leaseRateMaxon lease, removes them, so every row you get back carries a figure you can screen on. Leave the fields blank when you want the full market. - Cap rate and occupancy are publisher-dependent, and thinner than you might expect โ measured across live runs,
capRatelands between 12% and 52% of sale rows depending on property type and market, andoccupancybetween 20% and 73%. Filter on them after the fact rather than assuming every row has them. - Four categories are sale-side only โ Crexi carries Multifamily, Hospitality, Self Storage and Mobile Home Park for sale but not for lease. Pair those with For Sale or All Deal Types. Office, Retail, Industrial, Land, Special Purpose and Healthcare are available on both sides.
- For multifamily deals, filter by
propertyTypes: ["Multifamily"]โ then dividepricebysqft, or byunitsfor a per-door figure, for quick screening across apartment listings. - Schedule recurring runs to track new inventory โ pair this actor with Apify's scheduling feature to pull fresh listings daily or weekly, then compare against your previous dataset to surface new additions.
Pricing
From $1.30 per 1,000 results โ no compute charges. You only pay per result returned.
Your rate depends on your Apify discount tier. Tiered rates take effect on 6 September 2026; until then every plan pays $1.30 per 1,000 results.
| Results | No discount | Bronze | Silver | Gold |
|---|---|---|---|---|
| 100 | $0.15 | $0.14 | $0.14 | $0.13 |
| 1,000 | $1.55 | $1.45 | $1.40 | $1.30 |
| 10,000 | $15.50 | $14.50 | $14.00 | $13.00 |
| 100,000 | $155.00 | $145.00 | $140.00 | $130.00 |
Integrations
Connect your Crexi data to the tools you already use:
- Zapier โ trigger workflows when new listings are collected (CRM updates, Slack alerts, email notifications)
- Make (formerly Integromat) โ route listing data into Google Sheets, Airtable, Notion, or any custom pipeline
- Google Sheets โ use the Apify Google Sheets integration to stream results directly into a spreadsheet
- Apify API โ call the actor programmatically and retrieve results via the Apify REST API or client SDKs
- Webhooks โ configure a webhook to POST results to your own endpoint as soon as each run completes
Legal & Ethical Use
This actor collects publicly available listing data from Crexi.com. Use it in accordance with Crexi's Terms of Service and all applicable laws. Do not use collected data for spam, harassment, or any purpose that violates the privacy or rights of brokers or property owners. The actor does not collect any login-gated or private information โ broker phone numbers and email addresses are not available to unauthenticated users and are not included in the output.