Use Case

floors.js for Landing Pages

Landing page visitors are the warmest leads you'll ever get. They clicked your ad, read your headline, and they're still on the page. floors.js lets you talk to them before they leave.

Get started — from $14/mo See how it works

The problem every marketer knows

Landing pages convert at 2-5%. That means 95%+ of your paid traffic leaves without doing anything. They read your headline, maybe scroll halfway, then close the tab. You spent money getting them there and you have no way to engage them in the moment.

Chatbots feel robotic. Pop-ups get ignored. Exit-intent modals annoy people. None of these tools let you have a real, human conversation with someone who is actively reading your page right now.

What floors.js does

floors.js adds a social layer to your landing page. Every visitor becomes a 3D avatar in a small, floating widget. They can see other people browsing the same page — instant social proof that this isn't a dead link.

More importantly, you can jump in and answer objections live. When someone lands on your page from a paid campaign, you see them appear. You type a message. They see it instantly, right there on the page. No forms, no scheduling, no friction.

It turns a static landing page into a live sales floor.

Scenarios where this wins

Product Hunt launches
Your launch day drives a wave of curious visitors. Engage them in real-time while the momentum is hot instead of hoping they'll come back.
Ad campaigns
You're paying per click. Talk to that paid traffic in real-time and convert them before the tab closes. Every conversation is ROI recovered.
Event pages
Build hype before the event starts. Let visitors chat with each other and your team while they're deciding whether to register.
Waitlist pages
Early adopters want to feel special. Let them chat with you and each other. Turn a static waitlist into a community from day one.

Turn bounce rate into conversations

A 3% conversion rate means 97 out of 100 visitors leave without doing anything. Some weren't qualified. But many had a question, a hesitation, or a concern that a single answer would have resolved. They just didn't want to fill out a form to get it.

floors.js changes the math. Instead of hoping visitors will navigate to a contact page, you meet them where they already are. The widget shows them they're not alone on this page — other people are here too, and so are you.

The social proof aspect is underrated. When a visitor lands on your landing page from a Google Ad and sees 4 other people browsing the same page, it signals that this is real, active, and worth their time. It's the digital equivalent of a busy restaurant vs. an empty one.

One line to install

<script src="https://floorsjs.com/embed.js" data-key="flr_..."></script>

Paste it before </body> on your landing page. Works with any builder or stack — Unbounce, Instapage, Webflow, Carrd, WordPress, or plain HTML. Your page becomes a live room instantly. No config needed.

Frequently asked questions

Does it work with Unbounce or Instapage?
Yes. Both support custom scripts. Add the script tag via the custom code section in your page settings.
Will it conflict with my existing chat widget?
No. floors.js runs in its own isolated DOM layer with prefixed IDs. It works alongside Intercom, Crisp, Drift, or any other chat tool.
Can I see which ad campaign a visitor came from?
floors.js shows the current page URL as the room. It doesn't track UTM parameters, but you can see which page a visitor is on and when they arrived.
Does it work on single-page sites?
Yes. If your landing page is a single URL, all visitors appear in the same room. For multi-page funnels, each page becomes its own room.
Will it affect my page load speed?
No. The script loads asynchronously and doesn't block rendering. Core Web Vitals are unaffected — critical for landing page performance.

Alternatives & Comparisons

Intercom Alternative Crisp Alternative Tidio Alternative tawk.to Alternative vs Gather vs SpatialChat