Lennar Scraper - New Homes, Prices, Floor Plans & Communities avatar

Lennar Scraper - New Homes, Prices, Floor Plans & Communities

Pricing

from $1.00 / 1,000 listing results

Go to Apify Store
Lennar Scraper - New Homes, Prices, Floor Plans & Communities

Lennar Scraper - New Homes, Prices, Floor Plans & Communities

Scrape Lennar (lennar.com) new-home communities, move-in-ready homes and floor plans by state or URL. Extract 50+ fields including prices, monthly payments, price drops, beds, baths, square footage, GPS coordinates, amenities and virtual tours.

Pricing

from $1.00 / 1,000 listing results

Rating

0.0

(0)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

1

Bookmarked

1

Total users

0

Monthly active users

16 days ago

Last modified

Features

Limited permissions

Share

Lennar Scraper: New-Home Communities, Move-In-Ready Homes & Floor Plans

Lennar Scraper turns lennar.com into a structured new-construction data feed. Pull whole US states of communities and master-planned communities, move-in-ready homes with firm prices and full monthly-payment breakdowns, and (on request) floor plans with specs, elevation images and virtual tours. Search by state or paste lennar.com links, then export to JSON, CSV or Excel, or pull results straight into your app through the API.

Why This Scraper?

  • Three record types, one run. Communities and master-planned communities (neighbourhood summaries), move-in-ready homes (available homes with firm prices), and floor plans (specs, elevations, virtual tours, walkthroughs).
  • Whole states in one pass. One state returns every community and every available home Lennar lists there, from a handful up to thousands of records.
  • 35+ fields per record, including a full estimated monthly payment breakdown (principal and interest, property tax, home insurance, mortgage insurance, HOA), original vs current price so you can spot price drops, plan starting prices, badges, and GPS coordinates.
  • Search or URL mode. Pick states from a list, or paste any lennar.com/new-homes state page or community page.
  • Optional floor-plan detail crawl. Turn it on to also collect per-plan specs, elevation images, virtual tours, community amenities and sales consultants.
  • Built-in cost controls. A hard record cap and an optional residential-traffic budget keep trial runs small and predictable.
  • Nothing silently dropped. Search results carry the full source object under raw.

Use Cases

  • Homebuilder market research: track price drops, price-per-square-foot and inventory levels across states and communities.
  • Real estate investment analysis: compare firm prices, monthly payment breakdowns and square footage between move-in-ready homes.
  • Mortgage and lending tools: feed the estimated monthly payment breakdown into calculators and affordability models.
  • Local market dashboards: monitor community status, badges and available-home counts for a state or metro over time.
  • Content and lead-gen sites: build floor-plan pages with specs, elevation images and virtual tour links.

Data You Get

Sample shapes below. Values are illustrative placeholders, not from a live listing.

FieldExample
recordType"community" (also "homesite", "plan")
id"c_20441"
resultKind"mpc" (also "community"; community records only)
communityName / mpcName"Sample Ranch"
state / stateCode"Florida" / "FL"
city / market"Sample City" / "XYZ"
status"ACTIVE" (also "MOVE_IN_READY", "SOLD")
badge"Amenity Rich" (also "Quick Move-In" on homes)
priceLabel / priceFrom"From the $300s" / "From $325K"
bedRange / bathRange / sqftRange"3 - 5" / "2 - 3" / "1,600 - 3,200 sq. ft."
address"100 Sample Drive #101" (homesite records)
price / wasPrice / priceDrop345000 / 365000 / 20000
beds / baths / halfBaths / sqft3 / 2 / 0 / 1741
planName / planStartingPrice"Sample Plan" / 313000
estimatedMonthlyPayment{ principalAndInterest, propertyTax, homeInsurance, mortgageInsurance, approximateHoaFee }
estimatedMonthlyTotal2450.5
latitude / longitude29.6500 / -81.2000
elevationImages[ { title, desc, url } ] (plan records, floor-plan crawl)
virtualTourUrl"https://www.lennar.com/..." (plan records, floor-plan crawl)
amenities / consultantscommunity amenities and sales-consultant names (on a pasted community URL's own record, or nested under communityContext on floor-plan records)
url"https://www.lennar.com/new-homes/florida/sample-market/sample-city/sample-ranch"
rawthe complete source object

Community records also carry an overview, hero image, ZIP code, Google place id, property types, division and community numbers, an mpc id and map bounds, plus a sub-community count and list on master-planned communities. Homesite records also carry a lot id, formatted price, move-in-ready and "home of the week" flags, offer availability and end date, the community's price range, and a page-views signal. Floor-plan records also carry a plan number, available-homesite count, a highlighted attribute, a "next generation" flag, a video tour link, a walkthrough flag and object, floorplan images, and the same community context (phone, email, site-plan PDF, mortgage-prequalification link) captured for the community it belongs to.

How to Use

  1. Pick a mode: search (pick states) or url (paste links).
  2. Fill in the fields for that mode, and switch on floor plans if you want per-plan detail.
  3. Set Max records and, if you want one, a residential traffic budget, then click Start.
  4. Download the dataset as JSON, CSV or Excel, or read it through the API.

Search two states, communities and homes only:

{
"mode": "search",
"states": ["Florida", "Texas"],
"includeCommunities": true,
"includeHomesites": true,
"enrichDetails": false,
"maxItems": 100
}

Full floor-plan detail crawl for one state (community and home records off so the whole cap goes to plans):

{
"mode": "search",
"states": ["Arizona"],
"includeCommunities": false,
"includeHomesites": false,
"enrichDetails": true,
"maxItems": 200
}

Paste a state landing page:

{
"mode": "url",
"startUrls": ["https://www.lennar.com/new-homes/north-carolina"],
"includeCommunities": true,
"includeHomesites": true
}

Paste one community page for its floor plans:

{
"mode": "url",
"startUrls": ["https://www.lennar.com/new-homes/texas/example-market/example-city/example-community"],
"includeCommunities": true
}

Run it from your code

Python:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("abotapi/lennar-scraper").call(run_input={"mode": "search", "states": ["Florida"], "maxItems": 50})
for record in client.dataset(run["defaultDatasetId"]).iterate_items():
print(record["recordType"], record.get("communityName") or record.get("address"), record.get("price"))

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('abotapi/lennar-scraper').call({ mode: 'search', states: ['Florida'], maxItems: 50 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Or connect it to Make, Zapier, n8n, Google Sheets or webhooks from the Integrations tab.

Cost controls and repeat runs

Max records caps the whole run; set it to 0 for no limit, which can be thousands of records per state. A residential traffic budget (MB) is available separately: once it is spent, the run stops paging through further state results and skips the floor-plan crawl, though a pasted community page and a crawl already underway are not bounded by it, so treat the cap as approximate rather than a hard stop. To track changes on a schedule, switch on Incremental mode (see below); without it every run returns the full scope again.

Incremental mode. Switch on incrementalMode and schedule the same input. The actor keeps a saved baseline per search scope (or per stateKey) and labels every record NEW, UPDATED (with changedFields), UNCHANGED, REAPPEARED or EXPIRED, with firstSeenAt and lastSeenAt. Unchanged records are not output and not charged unless you switch on emitUnchanged. EXPIRED records (listings that disappeared) are output only when a run covered its whole scope; a run stopped by Max records or by a failed page never reports removals. A change is detected by comparing every extracted field except the raw payload; list further fields in ignoreFieldsForChanges to stop them counting as a change. With incremental mode off, output is identical to before. resumeFromRunId continues an earlier run that stopped early without collecting its records twice.

URL mode shapes

In url mode with the URLs field left untouched, the actor scrapes the default example set (one example per shape below; the promo example is always skipped with a warning) instead of stopping with a no-input message. Replace it with your own links at any time. Links that cover the same community or area are collected once: a community that appears both in a state or metro page and as its own page produces a single record.

URL shapeExampleBehaviour
State page (also trailing slash, http://lennar.com)lennar.com/new-homes/floridaCollects the whole state
State page by product typelennar.com/new-homes/florida-singlefamilyCollects the whole state; the product-type filter is not applied (a warning is logged)
Metro pagelennar.com/new-homes/florida/miamiCollects that metro's communities and homes
Community pagelennar.com/new-homes/florida/tampa-manatee/land-o-lakes/angelineCommunity detail and floor plans
Active-adult community page.../angeline-active-adultCommunity detail and floor plans
Home / plan page.../villas-de-san-diego/azure/25118601302Extracted if the page carries data, otherwise a warning is logged
Trailing-slash or plain-http state linklennar.com/new-homes/florida/Redirected to the canonical state page and collected as a state
Promo / offer page.../promo/jaxlen_bf26Skipped with a warning

Enrichment and output views

With enrichDetails on (or a pasted community page) each community is fetched once more for floor plans, amenities and consultants. The dataset has separate views for communities, homes, plans and a basic summary. Pricing is as shown live on the Pricing tab; this README does not quote prices.

Send results into your apps (MCP connectors)

Optionally pipe the scraped records into the apps you already use, via Model Context Protocol (MCP) connectors. This is an extra delivery step after the scrape: the Apify dataset is never changed.

What gets written to the connector: a condensed, human-readable summary of each record, not the full JSON. Each item becomes one entry with a title and its key fields flattened to plain text. The complete record always stays in the Apify dataset.

  1. Authorize a connector once under Apify → Settings → Integrations (Notion, Linear, Airtable, or Apify).
  2. Select it in the "Pipe results into your apps" input field. (If the picker is empty, you haven't authorized a connector yet.)
  3. For Notion, also set notionParentPageUrl to the page where records should be created.

The connection is mediated by Apify's MCP proxy, so this actor never sees your third-party credentials. Leave the field empty to skip.

Input Parameters

ParameterTypeDefaultDescription
modestringsearchsearch (pick states) or url (paste links).
statesarray["Florida"]US states to scrape in search mode. Each state returns every community and move-in-ready home Lennar lists there.
marketsarrayemptyNarrow each selected state to metro areas by name (for example Miami or Tampa), lennar.com metro slug or market code. Resolved from Lennar's own market list; no match stops the run with an error listing the available markets. Search mode only.
expandToWholeStatebooleanfalseWhen on, markets is ignored and whole states are collected.
startUrlsarrayone example URL per supported shape (see URL mode shapes)lennar.com links to scrape in url mode.
includeCommunitiesbooleantrueOutput one record per community / master-planned community with price, bed, bath, sqft ranges, badge, brand, status and coordinates. Applies to both modes.
includeHomesitesbooleantrueOutput one record per available home with a firm price, full estimated monthly payment breakdown, beds, baths, square footage, plan and status. Applies to both modes.
enrichDetailsbooleanfalseAlso output one record per floor plan, plus community amenities, and sales consultants. Fetches one extra page per community. A community URL pasted directly in url mode always returns its floor plans regardless of this setting.
maxItemsinteger20Stop after this many records across the whole run. 0 means no limit (full coverage of every selected state, which can be thousands of records per state).
proxyobject{ "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }Connection settings. The default is Apify Proxy's residential group. lennar.com answers datacenter connections only intermittently, so residential is the more reliable choice; see Plan Requirement.
maxResidentialMBinteger0Optional cap on residential traffic in MB. After this many MB the run stops paging through further state results and skips the floor-plan crawl, though a pasted community page and a crawl already underway are not bounded by it, so treat the cap as approximate. 0 means no cap.
resumeFromRunIdstring(none)ID of an earlier run that stopped early; its records are skipped so nothing is collected twice.
incrementalModebooleanfalseLabel records NEW / UPDATED / UNCHANGED / REAPPEARED / EXPIRED against a saved baseline; unchanged records are not output or charged.
stateKeystring(none)Name of the saved baseline; empty derives it from the search scope.
emitUnchangedbooleanfalseIncremental mode only: also output UNCHANGED records.
emitExpiredbooleantrueIncremental mode only: output EXPIRED records for listings that disappeared, when a run covers its whole scope.
ignoreFieldsForChangesarrayemptyIncremental mode only: top-level field names that must not count as a change.
mcpConnectorsarray(none)Optional: send a summary of each record to apps you authorized under Integrations.
notionParentPageUrlstring(none)Notion connector only: page under which records are created.
maxNotifyListingsinteger50Cap on items written to each connector per run. Does not affect the dataset.

Output Example

Sample shape: values are illustrative placeholders, not from a live listing.

{
"recordType": "homesite",
"id": "hs_500123",
"state": "Florida",
"stateCode": "FL",
"status": "MOVE_IN_READY",
"address": "100 Sample Drive #101",
"url": "https://www.lennar.com/new-homes/florida/sample-market/sample-city/sample-ranch/100-sample-drive-101",
"lotId": "L-042",
"beds": 3,
"baths": 2,
"halfBaths": 0,
"sqft": 1741,
"price": 345000,
"wasPrice": 365000,
"priceDrop": 20000,
"formattedPrice": "$345,000",
"badge": "Quick Move-In",
"isMoveInReady": true,
"isHotw": false,
"offerAvailable": true,
"offerEndDate": "2026-11-30",
"imageUrl": "https://images.lennar.com/sample/elevation-b.jpg",
"planName": "Sample Plan",
"planStartingPrice": 313000,
"planCustomPrice": null,
"communityName": "Sample Ranch",
"communityPriceRange": "From the $300s",
"mpcName": "Sample Ranch",
"city": "Sample City",
"market": "XYZ",
"divisionNumber": "12",
"estimatedMonthlyPayment": {
"principalAndInterest": 1780.5,
"propertyTax": 320.0,
"homeInsurance": 145.0,
"mortgageInsurance": 95.0,
"approximateHoaFee": 110.0
},
"estimatedMonthlyTotal": 2450.5,
"pageViews": { "total": 812 },
"latitude": 29.6500,
"longitude": -81.2000,
"googlePlaceId": null,
"raw": {}
}

Plan Requirement

The run defaults to Apify Proxy's residential group. lennar.com sits behind a Cloudflare edge that answers datacenter connections only intermittently: in our measurements a datacenter address got a page roughly one request in three and a block page (HTTP 403, "Attention Required") the rest of the time, so datacenter can work but is not dependable. The actor checks which connection your account can use and, if residential is not available (Apify free plans do not include it), the log says so ("The selected connection is unavailable to this run. Apify free plans do not include residential proxies.") and the run continues on a backup connection; the log then also notes "Served over the backup connection (the default connection was unavailable)." Some pages may still be unavailable on the backup. For dependable results use a paid plan with residential access, or supply your own proxy URLs in the Proxy field.

If nothing could be read, the run fails with one of these messages: the proxy connection was refused for this account (your plan does not include proxy access, or your own proxy URLs have invalid credentials); no results because residential proxies are unavailable and the backup connection could not load the Lennar pages; or a general connection problem where the requests failed (a connection problem, not an empty search), in which case try again later.

FAQ

How much does it cost?

You pay per record returned (community, home or floor plan). Floor-plan records also carry a separate detail-enrichment charge: this fires once per floor-plan record whenever one is produced, whether that is because Include floor plans was switched on for a state search or because a single community page was pasted directly in url mode, which always returns its floor plans regardless of that setting. Community and move-in-ready home records are not charged the detail-enrichment fee. The Pricing tab shows the current per-event rates. Use Max records to cap the cost of any run.

This actor collects only publicly available new-home listing data. You are responsible for how you use it: follow lennar.com's terms and the laws that apply to you, and get legal advice if you plan commercial redistribution. Prices, specs and availability change frequently and are not guaranteed to be current at the time you read them.

Can I run this on a schedule to catch new listings or price changes?

Yes, schedule it from the Schedules tab and switch on Incremental mode: each run then returns only new, changed and removed records, labelled NEW, UPDATED, REAPPEARED or EXPIRED, instead of the full scope again. Keep the same input (or the same stateKey) between runs so they share one baseline.

Why did my run fail or finish with an empty dataset?

If every request to lennar.com is refused, or a pasted URL or state search page cannot be read, the run is marked as failed (not as an empty success) with one of the messages listed under Plan Requirement, and the same message plus request and error counts is saved in the run's key-value store under OUTPUT. A markets input that matches no market also fails the run, listing the available markets. If only some requests fail, the run still finishes successfully with whatever records it did collect; check errors in OUTPUT. Run it again in a few minutes, and check that your plan includes residential proxy or that your own proxy URLs are valid.

Can I use it with AI agents or MCP?

Yes. Call it from any Apify integration or MCP client, and use the connector field to push results into Notion, Linear or Airtable.

🔗 Want more real estate data?

Pair this actor with these related scrapers from the same team:

🏠 DR Horton
Extract new-home data from drhorton.com, America’s largest homebuilder. Pull communities...
🏠 NewHomeSource
Scrape new homes, floor plans, builders and communities from NewHomeSource.com. Search by...
🏠 Redfin Scraper
Scrape redfin.com home listings: price, beds, baths, sqft, lot, year built, coordinates...
🏠 Rent.com Scraper
Extract rental listings from rent.com. Get comprehensive data including monthly rent...
🏠 OnTheMarket Scraper
Scrape onthemarket.com for-sale, to-rent and new-homes listings with 85+ fields: price...
🏠 Zap Imóveis Scraper
Scrape Zap Imóveis sale, rental and new-development listings by city, filters or URL...

👉 Browse all abotapi scrapers

💬 Support

  • 🐞 Found a bug or a missing field? Open a ticket on the Issues tab. We usually reply within hours.
  • 🛠️ Need another site, extra fields or a private build? Email contact@abotapi.com.
  • ⭐ Enjoying it? A quick review on the actor page helps other users find it.
⌂ 换网址