Hotjar vs Microsoft Clarity vs FullStory: Session Replay Pricing Playbook
A store with 40,000 sessions a month has a checkout bug costing three orders a day. The dashboard shows the drop-off, not the why. A session replay tool can: it records the visitor's clicks, scrolls, and form fills, and plays them back like a film. The question is which vendor's meter you will live under.
What a session replay tool actually meters
A session is one visitor's continuous run through your site: every page, every click, every scroll, until they leave or go quiet. Both vendors end a session after thirty minutes of inactivity. Hotjar's pricing page states it plainly: "Sessions end after 30 minutes of inactivity." Microsoft Learn says the same for Clarity. The meter is visits, not people.
Those sessions buy three things: replays that show the journey, heatmaps that aggregate every click and scroll into one picture, and frustration signals — Clarity names rage clicks and dead clicks — that point at the failing element. All three vendors include replays and heatmaps on their free tiers. The differences sit in the caps, the retention, and the masking. For the aggregate side, read the companion guide on Google Analytics 4 vs Mixpanel vs Amplitude.
The free tiers, side by side
Hotjar now sells as Contentsquare: its pricing page returns Contentsquare's pricing page, and the plans below are its Experience Analytics tiers. Free costs $0 forever and covers up to 200,000 monthly sessions, with one month of data access. Growth starts at $49 a month on monthly billing, or $39 a month on yearly billing, from 7,000 sessions, stretching to 10 million on the comparison table; data access runs 13 months. Pro and Enterprise are custom-priced, from 1 million sessions. Paying yearly cuts 20 percent, per the page's FAQ.
Clarity's pricing page is one line long: "It's free, forever." Microsoft writes that you will "never run into traffic limits or be forced to upgrade to a paid version," and that "Clarity supports unlimited heatmaps, websites, and team members." There is no paid tier to upgrade into. The feature list includes always-on recordings, heatmaps, rage-click and dead-click insights, 40+ segmentation filters, Copilot summaries, and a Google Analytics integration.
FullStory's free tier is the smallest of the three. FullstoryFree gives 30,000 sessions a month, with 12 months of session replay retention and 12 months of analytics retention. Its paid plans — Business, Advanced, Enterprise — carry no public price at all. The pricing page's only call to action is "Request pricing & demo." No price means no comparison until the sales call, and the quote that comes back is negotiated, not listed.
| Vendor | Free sessions / month | Free price | Paid entry | Paid retention |
|---|---|---|---|---|
| Hotjar (Contentsquare) | 200,000 | $0 forever | $39/mo yearly, $49/mo monthly, from 7,000 sessions | 13 months |
| Microsoft Clarity | Unlimited | $0 forever | None — no paid tier | 30 days playback, 9 months heatmaps |
| FullStory | 30,000 | $0 | Unpublished — request a quote | 12 months on Free |
A 40,000-session site fits inside every free tier at once — run the volume against the cap before you install the snippet.
Worked example 1: the 7,000-session site
At 7,000 sessions a month, every vendor is free except the one you might pay for anyway. Hotjar Growth at its entry tier costs $39 a month yearly, $49 monthly:
Over three years the billing choice alone is worth $360: $1,404 on yearly billing against $1,764 on monthly billing. What the $39 buys over Free is not sessions — Free already covers 7,000 — it is 13 months of data access against 1 month, plus zone heatmaps, journey analysis, and AI summaries.
Worked example 2: the 30,000-session site
At 30,000 sessions a month, all three free tiers still cost $0 — but they are no longer equal: Hotjar Free uses 15 percent of its allowance, Clarity has no allowance, and FullStory Free is exactly at its cap.
A site growing 10 percent a month crosses FullStory's cap in a single month — and migration is not free: replays do not transfer between vendors. The cheapest month to move is the month before the cap, not the month after it. At 30,000 sessions, FullStory Free is a trial with a 12-month memory, not a home. Clarity is the only one of the three whose free tier cannot be outgrown.
Worked example 3: the 200,000-session site
At 200,000 sessions a month, Hotjar Free is exactly at its cap, Clarity is still $0 and unlimited, and FullStory Free covers 30,000 sessions, leaving 170,000 — 85 percent — without a free home:
The Hotjar bill at this volume is the number the public page does not print: Growth is priced in the in-app builder, and the price at 200,000 sessions was not on the page this guide read. Clarity's answer at 200,000 sessions is $0, with the same feature list as at 7,000. The trade is retention: Clarity keeps playback for 30 days. A site that needs a year of history pays Hotjar's Growth price; a site that works from heatmaps and 30 days of replays pays nothing.
Choosing the tool: the decision table
| Decision factor | Hotjar (Contentsquare) | Microsoft Clarity | FullStory | Authority |
|---|---|---|---|---|
| Free session cap | 200,000/month | Unlimited | 30,000/month | Vendor pricing pages, 8 Nov 2026 |
| Paid entry price | $39/mo yearly, $49/mo monthly | No paid tier | Unpublished, sales-led | Vendor pricing pages, 8 Nov 2026 |
| Replay retention | 1 month Free, 13 months Growth | 30 days playback, 9 months heatmaps | 12 months on Free | Vendor docs, 8 Nov 2026 |
| Masking default | User input suppressed; 9+ digit numbers always suppressed | Balanced: numbers and emails masked; inputs always masked | Private by Default: nothing captured unless allowlisted | Vendor help docs, 8 Nov 2026 |
| Best for | Teams that want AI summaries and 13-month history | Any site that wants unlimited free replay | Product teams that need deep behavioural analytics | Editorial analysis of the three pages |
Hotjar sells the middle: a self-serve paid tier with a printed price, AI summaries, and 13 months of history. Clarity has no meter — and no paid tier to graduate into. FullStory's paid price is a negotiation, and its free tier pairs the smallest cap with the longest free retention.
Privacy masking: three defaults, three different promises
Replay records what visitors type — passwords, card numbers, email addresses — and each vendor's default decides what leaves the browser.
Clarity masks sensitive content by default and, in Microsoft's words, "never captures anything that is masked or sent over the wire." Input boxes and drop-down menus are masked in all modes and cannot be unmasked. The default mode is Balanced: only content Clarity classifies as sensitive is masked, and "we classify numbers and email addresses as sensitive content." Strict masks everything; Relaxed masks nothing except inputs and drop-downs. Masking changes take up to an hour and are never retroactive, and Clarity does not mask content inside style sheets.
Hotjar suppresses user input by default. Its help centre states, "By default, Hotjar suppresses user input," and adds a rule no setting can override: "Hotjar will always suppress numbers 9 digits or longer regardless of settings," which blocks credit card and telephone numbers. Suppressed text renders as asterisks, numbers as 111, dates as 01/01/1979 — the asterisk count is random, so it does not leak the typed length. Other suppression is off by default; numeric text and email addresses are the exceptions, enabled by default. Single elements can be suppressed with a 'data-hj-suppress' attribute.
FullStory goes furthest. Its Private by Default setting means "no text is captured or sent outside the user's browser unless it is explicitly allowlisted as safe to capture." Masked text becomes placeholder text that keeps the size, colour, and character length of the original, so the replay still reads like a wireframe of the page. Form Privacy automatically masks input, textarea, select, and contenteditable elements, and excludes radio buttons and checkboxes. It is switched on by asking Fullstory's support team, and turning it on late can break segments built on text.
The difference is who does the work: Clarity and Hotjar protect the obvious fields and leave the rest to configuration; FullStory protects everything and leaves the unmasking to you. For a checkout page, FullStory's default is safest; for a marketing site with no forms, Clarity's Balanced mode is enough. None of the three makes a site compliant on its own. For the self-hosted route, see self-hosted analytics with PostHog, Plausible and Umami.
Retention: the meter nobody prices
Retention is the second meter: it decides whether a replay you need in March still exists in March. Clarity keeps playback data for 30 days, then keeps 1 percent of recordings or 10 per day, whichever is higher, for up to 9 months; favourited sessions and heatmaps are kept 9 months. Hotjar Free keeps data 1 month, Growth 13 months; FullStory Free keeps replays and analytics 12 months.
The cost of a month of history on Hotjar Growth is:
FullStory Free gives 12 months for $0; Clarity gives 30 days — a hard edge, since a bug found 31 days after it shipped has no replay left, only the heatmap. Favourite the sessions that matter the day you find them: on Clarity, favouriting stretches a recording from 30 days to 9 months; on Hotjar Free, nothing stretches 1 month to 13, and that is the $39.
Who should not buy any of these
Three kinds of operator should not install a replay tool at all. First, a site under 1,000 sessions a month, where the analytics dashboard already answers the question — the tool adds a snippet and a privacy surface for insight nobody will watch. Second, a site handling health, financial, or children's data with no one to own the masking configuration: the defaults protect the obvious fields, but a thank-you page echoing a form entry in plain text defeats them. Third, a team with no one assigned to watch replays weekly: a tool nobody opens is a privacy risk with no return. If any of those three is you, spend the money on the SEO tooling that brings the traffic first and come back to replay when the traffic justifies it.
The buying policy in seven steps
- Count sessions for the last 90 days and take the peak month — not the average — as the volume to buy for.
- Check the peak against the caps: 30,000 for FullStory Free, 200,000 for Hotjar Free, no cap for Clarity.
- Decide the retention you need in writing: 30 days, 12 months, or 13 months — and name who favourites the sessions that matter.
- Price Hotjar Growth at the 7,000-session anchor — $39 yearly, $49 monthly — and get the quote for your volume from the in-app builder first.
- Configure masking before the first real session: Clarity Balanced or Strict, Hotjar suppression on the form pages, FullStory Private by Default if the site takes payments.
- Run the test-entry check from the warning above on every form, and record the date it passed.
- Diary a 90-day review: sessions against cap, replays watched per week, one named fix from a replay — blank twice running, cancel the paid tier.
Founder & CEO Insight — Enow A. Jovial
The cheapest replay tool is the one whose free tier still fits when traffic doubles, whose masking default already protects your forms, and whose retention still holds the session. At 7,000 sessions that is any of the three; at 30,000 it is two; at 200,000 it is Clarity for free, or Hotjar Growth at a price the builder will quote. Run the peak month against the caps, price the history at $3.00 a month, and configure the masking before the snippet goes live. Then run the margin on the fix the first replay finds through the profit calculator — a checkout bug worth three orders a day pays for every tier on this page before the week is out.

