A renter filters for apartments under $1,700, finds one at $1,650, tours it on a Saturday and loves it. On Tuesday the application arrives: $1,650 in rent, plus $45 valet trash, $25 pest control, $30 package lockers, $60 amenity fee and $80 for mandatory parking. The apartment now costs $1,890 a month. Nothing about it changed between Saturday and Tuesday except the number.
What a teaser rent is
We call the first number the teaser rent, and like the two-tab problem, it is a pattern so common it has come to look like the normal way to market an apartment. Every fee is disclosed eventually. By then the search, the shortlist and the tour have all happened against a price that does not exist on any lease.
Why the website drifts from the lease
Nobody sat down and decided to advertise a price no one will pay. The base rent lives in the PMS, where revenue management adjusts it daily. The fees live somewhere else: in the lease template, in an ancillary-services agreement, in a spreadsheet the regional manager keeps. The website was built to show the number the PMS publishes, because that was the number a website could reach. Each listing channel then recomputes ‘the price’ in its own way, and the same unit ends up wearing three different numbers in three places.
The result is drift rather than deception, but renters cannot tell the difference from the outside, and they no longer have to guess. They compare screenshots in group chats and read the application line by line. And increasingly, as we wrote in our piece on AI search, they ask an assistant to do the math for them.
The cost of the discrepancy
Brent Steiner, Engrain’s founder and CEO, said: ‘Pricing discrepancies are one of the biggest trust breakers in the renter journey.’ Trust breaks at a particular moment, when a renter learns that the number they planned around was never the one they would be asked to sign.
The business cost of that moment is easy to underestimate because it is spread across the funnel. A prospect who walks away at application has already consumed a tour, a follow-up and an hour of leasing-agent time. Someone who signs anyway starts the lease trusting you a little less, and that shows up again at renewal.

State total-price laws and the FTC rulemaking
In December 2025 Greystar agreed to pay $24 million to settle a case brought by the FTC and the State of Colorado over advertised prices that excluded mandatory monthly fees, and committed to displaying total monthly leasing prices clearly and conspicuously (as summarized in Arnold & Porter’s February 2026 advisory; the settlement is a resolution, not a finding of wrongdoing). In March 2026 the FTC opened a rulemaking on unfair or deceptive rental housing fee practices, asking, among other things, whether advertising rent that fails to include all mandatory fees should be prohibited outright.
The states are not waiting for the answer. Laws requiring the advertised rent itself to include mandatory fees are already in effect in Minnesota (January 2024), Massachusetts (September 2025), Nevada (October 2025), Connecticut (October 2025) and Colorado (January 2026). Virginia and Oregon have taken the disclosure route instead, requiring fees to be itemized before or at the lease, and California’s Honest Pricing Law has barred hidden mandatory fees in most consumer transactions since July 2024, though its reach into long-term residential leases is still contested. The details differ by state and this is not legal advice, but every one of these laws moves the same way, toward a first price a renter could sign.
If you operate across several states, our 2026 compliance checklist includes a state-by-state checker, and it covers the two compliance fronts operators most often overlook: cookie consent and accessibility.
How AI assistants read your price
When a renter asks ChatGPT or Perplexity what an apartment costs per month, the assistant assembles its answer from whatever your website publishes. If your site shows $1,650 and your neighbor across the street publishes an honest $1,890 all-in, the comparison the AI hands back is wrong in your favor exactly once, and then the renter finds out at application, with your name attached to the disappointment.
We have written about how to get your website cited by AI assistants, where the argument was that the shift rewards properties whose data a model can read. The same conditions apply to the price on the page. Because WP FloorMap builds the price a visitor reads and the price in the structured data underneath it from one calculation, an assistant reading the markup quotes what the visitor was shown.
Where the all-in number comes from
Until recently no single system owned the fee-inclusive number itself. Engrain, whose SightMap the site’s map runs on, closed that gap in two steps. In January 2025 it shipped fee transparency in SightMap®. Renters can toggle between base rent and the full monthly cost, and Engrain’s rent calculator, which lives in their product, builds the total from lease term, move-in date, number of applicants, pets and rentable items. In September 2025 it launched an All-In Unit Pricing API endpoint that publishes one fee-inclusive monthly number per unit, so every channel drawing from SightMap can show the same price. The stated goal is consistent all-in pricing, everywhere renters look, and the system publishing that number is the same one that already knows which units are available this afternoon.
WP FloorMap renders it. All-in Pricing is a per-property switch, off until you turn it on, and switching it on puts the fee-inclusive total on floor plans, in search, in the unit modals and in the structured data search engines and assistants read. Where a property has configured all-in numbers in Engrain, the page prints those exact per-unit figures. The map shows the same ones.
Where it has not, the plugin does the arithmetic itself, folding every recurring charge marked required into the advertised rent, whether you entered it in WordPress or it arrived from your SightMap expenses. That fallback is what makes the toggle usable now, without waiting on a data project upstream. The unit modal’s lease-term selector then shows how the total moves with the term, because a twelve-month price presented as the only price is a smaller version of the same problem.

Rents and availability arrive from SightMap in real time, so nobody has to retype the website on a Tuesday morning to match the PMS. Point the fee source at SightMap and the fees refresh with them. If you leave it on the manual table, that table is the one thing a person still keeps.
The worry about scaring renters off
Operators worry that putting the all-in number first will scare renters away, and it will scare some of them. The rest arrive at the tour having already accepted the price the lease will name, which leaves nothing later in the process to undo.
Measuring your teaser gap
Open your best-performing property’s website and note the advertised price on your most available floor plan. Then open your own lease template and add every monthly charge a resident cannot decline. If the two numbers differ, that difference is your teaser gap, and every prospect discovers it eventually. For a second opinion, ask an AI assistant what that apartment would cost per month and see which number it quotes back, since it can only read what you published.
Frequently asked questions
What is a teaser rent on an apartment website?
A teaser rent is the advertised price of an apartment that excludes mandatory monthly charges such as trash, pest control, package or amenity fees. The renter discovers the full monthly cost later in the process, usually at application or lease signing. The gap between the advertised number and the number on the lease is what regulators call a hidden or junk fee problem, and it is now the subject of state total-price laws and a pending FTC rulemaking.
What is all-in pricing in multifamily?
All-in pricing shows one monthly number that includes base rent plus every recurring mandatory fee. Engrain supports it natively: SightMap lets renters toggle between base rent and full monthly cost, and since September 2025 an All-In Unit Pricing API endpoint publishes a single fee-inclusive number per unit so every channel can show the same price.
Do any laws require apartment ads to show the total price?
Several states now require the advertised rent itself to include mandatory fees: Minnesota (January 2024), Massachusetts (September 2025), Nevada (October 2025), Connecticut (October 2025) and Colorado (January 2026). Others, such as Virginia and Oregon, require fee disclosure before or at the lease rather than in advertising, and California’s Honest Pricing Law has barred hidden mandatory fees in most consumer transactions since July 2024, though its reach into long-term residential leases is still contested. In March 2026 the FTC also opened a rulemaking asking whether advertising rent without mandatory fees should be prohibited. Always confirm current requirements with counsel for the states where you operate.
How does WP FloorMap display all-in pricing?
Each property has an All-in Pricing toggle, off until you turn it on. When it is on and the property has configured all-in numbers in Engrain, WP FloorMap prints those exact per-unit figures, so the page and the map show the same number by construction. Where Engrain numbers are not configured, WP FloorMap folds every recurring charge marked required into base rent: monthly charges as they stand, weekly, quarterly and annual ones prorated to a month. A charge set as a share of rent is applied against the unit’s own rent, and one-time charges are listed separately, never folded in. The fees can come from your SightMap expenses or from a table you keep in WordPress. A lease-term selector in the unit modal shows how the total moves with the term.
All-in pricing is a per-property switch. The demo sites show both sides of it: the base rent a renter compares, and the figure the lease will actually say. Send us a SightMap link and we will run it against your own fee table.

by Graham Dyer 