Free self-hosted alternative

A free, unlimited, self-hosted alternative to Smartlook

Move web session replay from a cloud-only product to a self-hosted UX toolkit with no vendor session cap.

No product fee No vendor session cap Your data, your server

“Unlimited” means TraceUX does not meter sessions. Your server capacity, storage, and retention settings still apply.

Why switch

When TraceUX makes more sense than Smartlook

Smartlook combines recordings with event analytics in a hosted product. TraceUX trades funnels and native mobile capture for first-party storage, a simpler deployment, and a wider set of user communication tools.

Best for

Web product teams leaving Smartlook that want replay, feedback, support, release communication, and operational context in one self-hosted tool.

Feature map

What maps to what

A practical comparison of the jobs teams commonly move to TraceUX.

In SmartlookIn TraceUX
Web session recordingsrrweb-powered DOM replay stored on infrastructure you control
User identificationAttach a user identity to the complete session after sign-in
Event contextActivity markers, custom events, browser logs, and session-linked Slack alerts
FeedbackContextual surveys plus written responses connected to the replay
Cloud subscription limitsNo required account, per-seat fee, or vendor-enforced recording quota
The honest comparison

What you gain—and what you give up

Where TraceUX goes further

  • Keep replay data on your own server and set retention for each site.
  • Support tickets open into threaded conversations with the originating page and session attached.
  • Publish What’s new updates and measure reads, likes, and comments per release.

What Smartlook has that TraceUX doesn’t

  • TraceUX does not provide native iOS or Android session recording.
  • Built-in funnels, event analytics dashboards, and heatmaps are not included.
  • TraceUX requires your team to run a small Linux service and manage its storage.
The cost model

Free software. Unlimited by the vendor. Bounded by your server.

TraceUX does not require a hosted account, charge per seat, or stop recording at a monthly vendor quota. You provide the Linux host and storage, and you decide how long to retain sessions. That makes the tradeoff explicit: predictable infrastructure you operate instead of a usage-based SaaS bill.

$0product license fee for self-hosting
Migration plan

Move from Smartlook without a blind cutover

Run both trackers briefly, verify your data, then retire the old one.

  1. 1

    Run TraceUX on your server

    Install the single Go binary on a Linux host. SQLite is embedded, so there is no separate database service to provision.

  2. 2

    Add the tracker to your site

    NPM (Recommended): install @trace-ux/tracker and connect your site key and server URL. Script tags and Google Tag Manager are alternatives for sites without a bundler. Keep the old tracker temporarily while you validate new recordings.

  3. 3

    Verify privacy and capture settings

    Mask sensitive fields, choose your retention window, and confirm that sessions, feedback, and logs arrive as expected.

  4. 4

    Remove the old tracker

    Once TraceUX is working in production, remove the previous vendor snippet so each visit is recorded only once.

Questions

Smartlook alternative FAQ

Is TraceUX really free and unlimited?

TraceUX has no required SaaS subscription, per-seat charge, or vendor-enforced session quota when you self-host it. Your practical capacity depends on the server, storage, retention, and recording settings you choose, so infrastructure is not literally cost-free.

Where is session data stored?

On the TraceUX server and storage you operate. You choose the collection endpoint, retention policy, and masking rules instead of sending recordings to a hosted analytics vendor.

Can TraceUX replace Smartlook for mobile apps?

No. TraceUX records websites, including mobile web, but does not ship native iOS or Android SDKs. It is a Smartlook alternative for web applications.

Can I migrate existing Smartlook recordings?

Existing Smartlook recordings cannot be imported. Install TraceUX alongside Smartlook, validate capture, and then remove Smartlook when you are comfortable with the new data.

Keep comparing

Other free and unlimited alternatives

Own the whole loop

Watch the session. Hear the user. Fix the problem.

Get started with npm