DEV Community

Ahnhyeongkyu
Ahnhyeongkyu

Posted on

Stop Shipping 300KB Testimonial Widgets — There's a Better Way

If you've ever added a testimonial widget to your site, you probably noticed the performance hit. Most popular solutions load 200-300KB of JavaScript, inject iframes, and tank your Core Web Vitals.

I run five different web products. Every one of them needed social proof. And every testimonial tool I tried made the same trade-off: nice-looking widgets that quietly destroyed page speed.

So I built Trustfolio.

The Problem

Here's what a typical testimonial widget does to your site:

  • 200-300KB of JavaScript loaded on every page
  • Layout shift from async-loaded content
  • Extra DNS lookups and third-party connections
  • No way to know which testimonials actually drive conversions

How Trustfolio Is Different

1. Under 5KB Widget

The entire embed script is under 5KB gzipped. It uses Shadow DOM for style isolation, loads async, and renders in under 100ms. Zero layout shift.

<div data-trustfolio="YOUR_WIDGET_ID"></div>
<script src="https://trustfolio.dev/embed.js" async></script>
Enter fullscreen mode Exit fullscreen mode

That's it. Two lines. No iframes, no external CSS, no layout shift.

2. AI That Knows What Converts

Instead of manually picking which testimonials to show, Trustfolio's AI analyzes every submission:

  • Sentiment Analysis — scores emotional tone from 0 to 1
  • Smart Highlights — finds the most persuasive phrases automatically
  • Conversion Score — rates each testimonial 0-100 based on how likely it is to drive action
  • Auto-Tagging — categorizes by topic (support, pricing, features, etc.)

3. Six Widget Layouts

Layout Best For
Wall of Love Landing pages, dedicated testimonial sections
Carousel Limited space, above the fold
Badge Compact trust signals
Single Card Hero sections, sidebars
Popup Exit intent, time-delayed social proof
Marquee Continuous scrolling banners

4. Multiple Collection Methods

  • Custom collection pages — branded forms with your questions
  • Import from CSV — migrate from other tools
  • Google/G2 imports — pull existing reviews (more sources coming)

Technical Architecture

  • Next.js 16 with Edge Runtime for the OG image API
  • Neon (serverless Postgres) via Drizzle ORM
  • Shadow DOM (closed mode) for widget style isolation
  • sendBeacon for analytics tracking without blocking
  • AI analysis powered by Claude API

Pricing

  • Free: 10 testimonials, 1 widget, wall layout
  • Pro ($29/mo): Unlimited testimonials, all layouts, AI analysis
  • Business ($79/mo): Everything + API access, white label, A/B testing

Try It

If you're running a SaaS, portfolio, or any site that shows customer feedback, give it a shot: trustfolio.dev

Free tier is genuinely usable — no credit card, no trial expiration. I'd appreciate any feedback from the dev community.

Top comments (0)