Skip to content

StreetEasy Scraper

Try for free

Scrape StreetEasy NYC rentals and homes for sale from search, listing or building URLs or area names. Get price, beds, baths, size, address, coordinates, agents with phone and email, amenities, fees, price history, open houses, building data and photos.

🏙️ StreetEasy Scraper

Scrape StreetEasy, New York City's biggest rental and sales site, for apartments for rent and homes for sale. Paste any StreetEasy search, listing or building URL, or just type a borough or neighborhood, and get one clean row per listing with price, beds, baths, size, address, coordinates, the listing agents with phone and email, amenities, fees, price history, open houses, building facts, nearby transit and schools, and photos. No login and no StreetEasy account needed.

✨ Why use StreetEasy Scraper?

  • 🧾 Complete listing records: price, net effective rent and free months, common charges, taxes and maintenance, beds, baths, rooms, square feet, days on market, description, amenities, outdoor space, views, parking and doorman type.
  • 📞 Agent contacts: every listing agent or leasing office with brokerage, phone, email (where StreetEasy shows it), license type and profile link.
  • 🏢 Building data included: building name, year built, floors, units, building amenities and policies, tax abatement flag, nearby subway stations and schools.
  • 🔗 Paste any StreetEasy URL: search pages with all their filters, listing pages, short /rental/<id> and /sale/<id> links, and building pages (every active listing in the building).
  • 🔎 Or search by area: type Brooklyn, Williamsburg, Upper West Side or NYC and add price, bedroom and bathroom filters.
  • 📈 Past the page limit: StreetEasy shows only about 1,400 listings per search; big searches are split into price ranges automatically, so a search with thousands of listings is not cut off.
  • 🔔 Monitoring mode: schedule the run and get only listings that are new since the last run.

🎯 Use cases

  • 🏠 Rental market research: compare rents, concessions (free months, net effective rent) and fees by neighborhood, building or bedroom count.
  • 💰 Investment analysis: screen condos and co-ops by price, common charges, taxes, maintenance and price per square foot, with price history.
  • 🤝 Lead generation: build lists of active listing agents and brokerages with phones and emails, per neighborhood or price range.
  • 📊 Price monitoring: track price cuts, days on market and new listings in the areas you follow, every day.
  • 🗺️ Maps and data products: every listing has latitude and longitude, transit stations and school zones.
  • 🏗️ New development tracking: follow buildings and their available units over time with building URLs.

🚀 How to use

  1. Open streeteasy.com, search the way you like, and copy the URL into StreetEasy URLs. Or type areas such as Brooklyn or Upper East Side into Areas and pick Rentals or Sales.
  2. Add filters if you want (price, bedrooms, bathrooms, sort order).
  3. Set Maximum listings.
  4. Keep Full listing details on for complete records (agents, history, building), or turn it off for fast search-card rows.
  5. Click Start, then download the results as JSON, CSV, Excel or HTML, or read them through the API.

📥 Input

FieldWhat it does
startUrlsStreetEasy search URLs (/for-rent/..., /for-sale/...), listing URLs (/building/<building>/<unit>, /rental/<id>, /sale/<id>) or building URLs (/building/<building>).
locationsNYC areas as StreetEasy names them: Manhattan, Brooklyn, Queens, Bronx, Staten Island, Williamsburg, Upper West Side, Astoria, NYC.
listingTyperentals or sales for areas.
maxItemsTotal listings to save across all inputs.
maxItemsPerSearchOptional cap per search URL or area, so every search gets its share.
minPrice / maxPriceMonthly rent for rentals, asking price for sales.
minBeds / maxBeds, minBathsBedroom and bathroom filters (0 bedrooms = studio).
sortBydefault, newest, price_low or price_high.
includeDetailsOpen each listing page for the full record (default on).
onlyNewListingsSkip listings saved by earlier runs of the same input.

Filters apply to areas and to search URLs; a filter you set here replaces the same filter in the URL. Listing and building URLs are not filtered. For rentals, StreetEasy compares the price filter with the net effective rent (the rent after free months), so a listing can show a higher price with a netEffectivePrice inside your range. Featured and sponsored listings outside your filters are skipped.

{
    "locations": ["Williamsburg", "Greenpoint"],
    "listingType": "rentals",
    "maxItems": 100,
    "minPrice": 2500,
    "maxPrice": 4500,
    "minBeds": 1,
    "sortBy": "newest",
    "includeDetails": true
}

📤 Output

One row per listing. The Listings view shows the main columns and the Agents view has one row per listing agent.

FieldDescription
id, url, listingType, statusStreetEasy listing id, link, rental or sale, and status (ACTIVE, IN_CONTRACT, SOLD, RENTED ...).
address, street, unit, city, state, zipCode, neighborhood, latitude, longitudeLocation.
price, netEffectivePrice, monthsFree, leaseTermMonths, priceDelta, soldPriceRent or asking price and concessions (for rentals without free months, netEffectivePrice equals price).
monthlyCommonCharges, monthlyMaintenance, monthlyTaxes, estimatedMonthlyPayment, maxFinancingPercent, taxDeductionPercentMonthly costs of homes for sale.
moveInFeesRental fees as StreetEasy lists them (application fee, deposit, broker fee ...).
bedrooms, fullBathrooms, halfBathrooms, rooms, sizeSqft, buildingType, saleTypeThe home.
daysOnMarket, onMarketAt, availableAt, offMarketAt, soldDate, createdAt, updatedAt, lastChangedAtDates (lastChangedAt is the last price or status change).
description, amenities, features, views, outdoorSpace, sharedOutdoorSpace, parking, doorman, storageDescription and amenities.
brokerage, brokerageLicense, agentName, agentPhone, agentEmail, agents, sourceType, sourceListingId, placementListing brokerage and agents, listing source, and whether the search showed it as organic, featured or sponsored.
photo, photos, floorPlans, videos, openHousesMedia and open houses.
priceHistory, listingHistory, statusChanges, areaPriceStatsPrice changes, past listings of the unit, status changes and recent prices for similar homes nearby.
building, transit, schoolsBuilding facts, nearby stations with lines and distance, zoned schools.
detailsScraped, searchUrl, scrapedAtWhether the listing page was read, which search found the listing, and when.

Example (trimmed, the agent is fictional):

{
    "id": "5183705",
    "url": "https://streeteasy.com/building/1499-bedford-avenue-brooklyn/6e",
    "listingType": "rental",
    "status": "ACTIVE",
    "address": "1499 Bedford Avenue #6E",
    "neighborhood": "Crown Heights",
    "zipCode": "11216",
    "latitude": 40.672104,
    "longitude": -73.95409,
    "price": 4850,
    "bedrooms": 2,
    "fullBathrooms": 2,
    "buildingType": "Rental unit",
    "daysOnMarket": 5,
    "availableAt": "2026-12-01",
    "amenities": ["Bike room", "Doorman", "Elevator", "Gym", "Laundry", "Package room"],
    "features": ["Private outdoor space", "Central ac", "Dishwasher", "Hardwood floors", "Washer dryer"],
    "brokerage": "MySpaceNYC",
    "agentName": "Jamie Rivera",
    "agentPhone": "+12125550147",
    "agents": [
        {"role": "listing", "name": "Jamie Rivera", "brokerage": "MySpaceNYC", "phone": "+12125550147", "email": null,
         "licenseType": "Licensed Real Estate Salesperson", "profileUrl": "https://streeteasy.com/profile/847388"}
    ],
    "priceHistory": [{"date": "2026-10-15", "price": 4850}],
    "building": {"name": null, "url": "https://streeteasy.com/building/1499-bedford-avenue-brooklyn", "yearBuilt": 2023,
                 "floors": 10, "units": 98, "policies": ["Guarantors accepted", "Pets allowed"]},
    "transit": [{"station": "Franklin Av", "routes": ["S", "2", "3", "4", "5"], "distanceMiles": 0.2093}],
    "detailsScraped": true
}

💰 Pricing

  • $2.50 per 1,000 listings ($0.0025 per listing), full details included. You pay only for listings saved to the dataset.
  • Platform usage (the hosted browser and compute) is billed on top at your plan's rates. In our tests it came to about $0.50 to $1.00 per 1,000 fully detailed listings (it grows with run time; 1,000 NYC rentals used $0.52 on a quiet run and $0.96 on a slow one).
  • Worked example: 1,000 detailed listings ≈ $2.50 + $0.50 to $1.00 ≈ $3.00 to $3.50. 100 listings ≈ $0.30.
  • With Full listing details off, the actor reads only search pages (14 rentals or about 38 sales per page), so usage is far lower.
  • Set a maximum charge per run in the run options if you want a hard spending cap; the actor stops cleanly when it is reached.

❓ FAQ

Is it legal to scrape StreetEasy? The actor reads only public pages that anyone can open without an account. Check that your use of the data, especially agent contact details, follows the laws that apply to you (for example privacy and anti-spam rules) and StreetEasy's terms.

Do I need a StreetEasy account, cookies or a proxy? No. The actor needs no login, and it brings its own browser and exit IPs.

How many listings can I get? StreetEasy shows only about 1,400 listings of one search (100 rental pages or about 37 sale pages). When you ask for more listings than one search can show, the actor splits it into price ranges and keeps going, so whole boroughs work. NYC-wide rentals are about 16,000 listings.

Why is a field empty? The listing does not have it. Square feet, net effective rent, free months, agent emails, floor plans and open houses are only on some listings. Rows with detailsScraped: false hold the search-card data only.

Can I schedule it or use the API? Yes. Schedule the actor (daily with Only new listings gives you a feed of fresh listings), call it through the API, or connect it to your tools with webhooks and integrations.

How fast is it? In our tests 10 detailed listings took 15 to 20 seconds per run, 300 listings about 3.5 minutes and 1,000 listings 8 to 14 minutes. StreetEasy limits how fast one visitor may open pages, so the actor keeps a steady pace (about 1.5 to 2.5 listing pages per second) instead of racing and getting blocked; plan on roughly 1.5 to 2 hours for 10,000 detailed listings, or use search-card mode, which read 2,000 listings in under 3 minutes.

⚠️ Limits

  • New York City only, because that is what StreetEasy covers.
  • Agent profile pages, address search and the StreetEasy agent directory are not scraped; agents come with their listings.
  • Filters cover price, bedrooms and bathrooms. For other StreetEasy filters (amenities, pets, neighborhoods lists), set them on streeteasy.com and paste the search URL.
  • StreetEasy limits how many pages one visitor may open in a short time, so the actor reads pages at a steady pace. Very large runs (thousands of listings) take a while.
  • Emails appear only where StreetEasy shows them, mostly for sales agents.

Related actors

G2
4.7/5
Excellent
Trustpilot

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.

No credit card. No setup calls.