HOW-TO
How to Embed an Interactive Site Map on a Builder Website
Script tag or iframe, where it should sit on a community page, what it does to page speed and SEO, and the accessibility obligation most builders miss.
· 7 min read · Plotex
You have a map. It needs to live on your community page without wrecking your page speed, your SEO or your accessibility posture. Here is what actually matters.
Take the iframe unless the map has to talk to your own UI. Lazy-load it, reserve its height, and publish the lot table as real HTML on the page — that last one is simultaneously your SEO answer and your accessibility answer, which almost never happens.
Two ways to embed
Script tag
A small script is added where the map should render:
<div id="community-map"></div>
<script src="https://maps.example.com/embed.js"
data-community="cedar-ridge" defer></script>
The script creates the viewer inside your div. It is the more flexible option: the map can resize with your layout, respond to your breakpoints, and talk to the host page if you ever want a filter in your own UI driving it.
It also runs in your page's context, so it shares your JavaScript environment and is subject to your Content Security Policy.
Iframe
<iframe src="https://maps.example.com/cedar-ridge"
width="100%" height="680"
loading="lazy"
title="Interactive site map for Cedar Ridge"></iframe>
More isolated and, for most builders, entirely sufficient. The map cannot interfere with your page, and your page cannot break the map. The trade-off is that it is a fixed box — responsive height takes a little more care.
Two things people forget on iframes, and both matter:
loading="lazy"so it is not fetched until it is near the viewport- a real
titleattribute, because a screen reader announces an untitled iframe as, roughly, "frame"
Which to use
Take the iframe unless you need the map to interact with your own UI. It is more robust, easier to sandbox, and your marketing team can paste it into a CMS without a developer. Take the script tag when the map needs to sit inside a filtering experience you control.
Script tag vs iframe, decided
| Iframe | Script tag | |
|---|---|---|
| Isolation | Full — cannot break your page | Shares your JS context |
| Responsive height | Needs care | Natural |
| Talks to your own filters | No | Yes |
| CSP directive needed | frame-src | script-src + connect-src |
| Pasteable into a CMS | Yes, by anyone | Usually needs a developer |
| Blast radius if it fails | The box is empty | Depends on the script |
We build both and recommend the iframe to most builders, which is worth saying plainly because the script tag is the more impressive integration and the one a vendor would rather sell you. Unless the map needs to sit inside a filtering experience you control, the isolation is worth more than the flexibility.
Where it goes on the page
Order matters more than most builders expect. What works:
- Community name, location, price band — orientation, above the fold
- One strong hero image
- The map — immediately after, where the static plat used to be
- The lot table — directly below or beside the map
- Plans, amenities, schools, contact
What does not work is burying the map under three sections of lifestyle copy. The buyers most likely to convert arrived wanting to know which lots are left, and they will scroll for roughly as long as their patience holds.
Two more placements worth having:
- A shareable standalone link for agents to text to a buyer, and for listing feeds
- The sales center touchscreen, full-screen, same map and same record
Page speed, honestly
A 3D map is heavier than a JPEG. That is real, and it is manageable.
Lazy loading is the whole game. Nothing heavy should be requested until the map is close to the viewport. A visitor who never scrolls past the hero should download essentially nothing extra. If your embed loads a 3D runtime on page load, that is a defect, not a characteristic.
Keep it out of your LCP. Largest Contentful Paint is usually your hero image. As long as the map sits below it and loads lazily, your LCP should not move. If the map is your hero, expect to pay for it.
Watch layout shift. Reserve the space. An embed that pops in and pushes content down will cost you Cumulative Layout Shift, which is a ranking signal and, more importantly, irritating. Set an explicit height or aspect ratio on the container.
Check the poster frame. Whatever renders before the map is interactive should be a real image of the community, not a grey box or a spinner. That frame is what a bounced visitor saw, and a meaningful share of visitors never wait for interactivity at all.
Budget for the third-party total, not just the map. Most builder community pages already carry a tag manager, a chat widget, a video player and two analytics tags. The map is often blamed for a slow page it only contributed to. Measure the page before you add it so you know which number is yours.
Measure it rather than trusting anyone's claim, yours included: run the page in PageSpeed Insights before and after.
SEO: what the embed can and cannot do for you
Be clear-eyed about this, because it is where the marketing claims get loose.
An iframe's content is not your page's content. Search engines generally attribute content inside an iframe to the iframe's own URL. If your lot data lives only inside the frame, it is not doing your community page any good.
The lot table is the part that ranks. Publish it as real HTML on the page itself — lot numbers, sizes in acres and square feet, dimensions, status. That is indexable text about your actual inventory, on your actual URL. It is also exactly what a screen reader needs, which is the rare case of the accessible answer and the SEO answer being the same answer.
Structured data is worth doing. Mark up the community page appropriately and keep it accurate. Do not mark up a page with review or rating schema you cannot substantiate — that is a policy violation and it can cost you the rich result entirely.
The real SEO benefit is behavioural. A buyer who explores a map stays longer and comes back. That is a genuine signal. It is not one you can point at a percentage for.
Accessibility, which is not optional
A 3D canvas cannot convey shape and spatial relationship to a screen reader. No implementation solves this — not ours, not anyone's.
The accepted answer is an equivalent HTML lot table published alongside the map, carrying the same data and reading from the same record so the two can never disagree. Plus:
- Keyboard operation of the map itself, with visible focus on the selected lot
- Status conveyed by colour and shape and text, never colour alone
- A text description of the canvas
prefers-reduced-motionrespected for camera movement- A real
titleon the iframe
In the US this is not merely good manners. Real-estate websites are among the most common targets for ADA accessibility complaints, and the scanners those complaints are generated from look for precisely the machine-detectable failures above. If your vendor agreement contains an accessibility warranty — increasingly they do — an inaccessible embedded component is your problem contractually whether or not it is ever your problem legally.
Mobile, where most of your traffic is
Test on a real mid-range Android phone, not a desktop window pulled narrow and not the newest iPhone. Three things behave differently there and all three are common:
Touch targets. A lot polygon that is comfortable with a mouse can be smaller than a fingertip. On a phone the interaction that works is tap-to-select with a detail card, not hover.
Pinch-zoom conflict. A map that captures pinch gestures fights the browser's page zoom, and the loser is usually the user trying to read your text. Whatever the map does with pinch, the page must still be zoomable — a viewport that blocks zoom is a straight WCAG failure.
The lot table is the mobile experience. On a 390px screen a 3D canvas shows a handful of lots legibly. The sortable table shows all of them. Plenty of mobile buyers will skip the map entirely and use the table, which is another reason it is not a fallback.
Content Security Policy
If your site sends a CSP — and it should — an embed will be blocked until you allow it:
frame-src https://maps.example.com;
For a script-tag embed you will need script-src and connect-src entries instead. Ask your vendor for the exact origins rather than widening the policy to *, which defeats the point of having one. If a vendor cannot tell you which origins their embed contacts, that is worth knowing before you ship it.
A pre-launch checklist
- Map sits where the PDF used to be, not three sections down
- Lazy loaded; nothing heavy fetched above the fold
- Container height reserved — no layout shift
- Accessible lot table published as real HTML on the page
- Iframe has a descriptive
title - Keyboard navigation works end to end
- Status readable without colour vision
- CSP updated with the specific origins
- Tested on a mid-range Android phone, not only a desktop
- PageSpeed run before and after
- Someone owns lot-status updates, by name
- PDF plat still published as the legal record
That last pair matter more than any of the technical items. A map that is wrong is worse than a PDF that is honestly out of date, and a buyer who catches one stale status stops trusting all of them.
Who owns it after launch
An embed is not a one-time job, and the two failure modes are organisational rather than technical.
Status ownership. Name a person. A map that is wrong is worse than a PDF that is honestly out of date, because a buyer who catches one stale status stops trusting every other one on the page. If two people each believe the other updates statuses, the map is wrong within a month.
Someone must own the page, not just the map. A community page gets redesigned, the embed gets moved below three lifestyle sections, and conversion quietly halves. Whoever owns the page should know the map's placement is load-bearing.
Also agree, before launch, what happens at sell-out. A community with every lot sold still gets traffic, and a map showing nothing available is a worse experience than a page that says "this community is sold out — here is the next one." Decide that now rather than improvising it in eighteen months.
The Bottom Line
Embed the iframe, lazy-load it, reserve its height, and put the lot table on the page as real HTML. That covers page speed, indexability and accessibility in four decisions, and it is most of the value.
The two things that will actually cost you are not on the technical list. One is burying the map under lifestyle copy, because the buyers most likely to convert came to find out what is left. The other is letting the statuses go stale, which destroys trust in the whole page rather than just that lot.
Keep publishing the recorded plat as the legal record. Stop using it as the sales tool.
Our embed and integrations page covers the specifics of how this works with Plotex, and the sample communities are embedded exactly as described here if you want to inspect the implementation.
Questions this raises
Does embedding an interactive site map slow my page down?
It does not have to. A well-built embed loads lazily — nothing heavy is requested until the map scrolls into view — so it should not affect Largest Contentful Paint if your hero is above it. What hurts page speed is an embed that loads a 3D runtime eagerly on every page view, including for visitors who never scroll to it.
Will Google index the content inside an embedded map?
Content inside an iframe is generally attributed to the iframe's own URL rather than the host page, so do not rely on the embed for your lot-level SEO. The reliable approach is to publish the accessible lot table as real HTML on the page itself — that is indexable, and it is also what a screen reader uses.
Should I put the map on its own page or on the community page?
On the community page, where the PDF used to be. A separate "site map" page splits your traffic and adds a click between a buyer and the thing they came for. A shareable standalone link is still worth having for agents and listing feeds.
What about accessibility?
A 3D canvas cannot convey spatial relationships to a screen reader, and no implementation can fix that. The accepted answer is to publish an equivalent HTML lot table alongside the map carrying the same data. In the US this is not just good practice: real-estate websites are among the most common targets for ADA accessibility complaints.
- embed
- interactive site map
- community page
- homebuilder website
- accessibility