No account required. No build needed.

Your bundle has a
weight problem. Find out exactly why.

Paste your package.json. Get your full dependency tree, a treemap of every KB, and a ranked list of exactly what to cut — in under 10 seconds.

Free foreverNo installWorks with any JS project

Or drag & drop your package.json file above. No account required.

14,000+
analyses run
89 KB
average savings found
10s
median analysis time
The Problem

Bundlephobia lies to you. Not on purpose — it just doesn't tell the whole story.

When you check a package on Bundlephobia, you see the size of that package in isolation. What you don't see is the 47 transitive dependencies it drags in. Or whether those sub-dependencies overlap with packages you already installed. Or that the “9 KB” library you just added actually adds 34 KB because it's CommonJS and can't be tree-shaken.

Isolation

Bundlephobia shows individual packages. Your bundle is a dependency tree, and shared sub-dependencies are counted multiple times when you use it to estimate project cost.

🕸

Hidden cost

A package listed at 4 KB gzipped can pull in 60 KB of transitive dependencies. Without analyzing the full tree, you're optimizing in the dark.

🗺

No action plan

Even if you find the problem, you need to know what to replace it with, how hard the migration is, and what the actual saving will be. Most tools stop at diagnosis.

How It Works

Three steps. Ten seconds. A clear path forward.

01

Paste your package.json

Copy and paste the contents of your project's package.json. That's it — no build, no local setup, no CLI to install.

02

See your full dependency tree

BundlePulse resolves every dependency and sub-dependency, computes the additive bundle cost of each package (accounting for shared sub-dependencies), and renders an interactive treemap.

03

Get your diet plan

A ranked list of the highest-impact, lowest-effort changes you can make today. Every recommendation comes with a specific instruction and an estimated KB saving.

What You Get

Everything you need to understand and fix your bundle.

🌳

Full dependency tree, not just the top level

BundlePulse resolves up to 5 levels of transitive dependencies. You'll see every package your project pulls in — including the ones you didn't know existed.

📊

Additive cost per package — no double-counting

When two packages share a sub-dependency, that shared portion is counted once, not twice. The result is an accurate, fair attribution of cost per package.

🗺

An interactive treemap that makes the problem obvious

Rectangles sized by bundle impact. A gradient from green to red. Hover for details. Click to drill into any package's sub-dependency breakdown.

🌿

Instant tree-shaking analysis for every package

BundlePulse checks whether each package ships an ESM build with proper tree-shaking support. Packages that are fully bundled regardless of what you import are flagged prominently.

💡

Lighter alternatives, ranked by savings

For your heaviest packages, BundlePulse surfaces curated lighter alternatives with API compatibility notes. Drop-in replacements are highlighted separately.

📋

A ranked action list — not just a report

The diet plan tells you exactly what to do: which package to replace, what to replace it with, and what code change to make. Best bang-for-your-buck item is always first.

How We Compare

Built for the diagnostic workflow nothing else supports.

FeatureBundlePulseBundlephobia
No build requiredYesYes
Full dependency treeYesNo
Additive cost per packageYesNo
Tree-shaking classificationYespartial
Alternative recommendationsYesNo
Ranked diet planYesNo
Historical trackingProNo
PR size-impact commentsProNo
Works in 10 secondsYesYes
Who Uses BundlePulse

For the solo developer

Free

You shipped a Next.js app. Lighthouse gives it a 58 on mobile. Paste your package.json. Get the treemap. See that moment.js is costing you 72 KB gzipped when date-fns would cost 6 KB. Fix it in 20 minutes.

For the tech lead

Pro

Your team adds dependencies without visibility into size impact. With BundlePulse Pro, every PR that touches package.json gets an automatic size-impact comment. Your team self-enforces the budget.

For the performance engineer

Pro

Historical bundle tracking shows the bundle grew 40 KB after a specific release. The diff shows two new packages were added. The diet plan identifies the 38 KB culprit the developer thought was 4 KB.

Pricing

Free for developers. Pro for teams.

Free
$0
forever free
  • Full dependency tree analysis
  • Interactive treemap visualization
  • Total bundle size estimate
  • Tree-shakeability breakdown
  • Top 3 diet plan recommendations
  • Alternative suggestions for top 3 heavy deps
  • No account required
Analyze My Bundle — Free
Most popular
Pro
$9
per month
  • Everything in Free
  • Unlimited saved projects
  • Historical bundle size tracking
  • Full diet plan (all recommendations)
  • GitHub PR comments with size table
  • Bundle budget alerts (email + Slack)
  • CI/CD integration via CLI
  • JSON + CSV export
  • Shareable analysis links
  • Up to 5 team members
Start Pro — 7-day free trial

No contracts. Cancel any time. The free tier is genuinely free — not a crippled demo.

FAQ

Frequently Asked Questions

How accurate are the bundle size estimates?
For most React and Next.js projects, BundlePulse estimates are within ±15% of Webpack Bundle Analyzer output. The main source of variance is your bundler's specific tree-shaking behavior and code splitting configuration. We label all figures as 'estimated'.
Do I need to share my source code?
No. BundlePulse only receives your package.json — a file that lists your dependencies and versions. It contains no source code, business logic, API keys, or environment variables.
How is this different from Bundlephobia?
Bundlephobia shows you the size of a single npm package in isolation. BundlePulse analyzes your entire project's dependency tree, computes the additive cost per package, classifies tree-shakeability, suggests lighter alternatives, and produces a ranked action plan.
Does this work with Yarn, pnpm, or Bun?
Yes. All package managers use the same package.json format. BundlePulse reads the dependencies field, which is identical regardless of which package manager you use.
What about monorepos?
V1 analyzes a single package.json. Monorepo support is on the roadmap for Q2 2026.
Is the free tier actually free, or is it a trial?
Actually free. No credit card. No time limit. If you need historical tracking and GitHub integration, Pro is $9/mo. If you just want fast bundle diagnosis, the free tier does that forever.

Your bundle has been hiding something. Time to find out what.

Paste your package.json and get your full analysis in under 10 seconds.

Analyze My Bundle — Free

No account required. Works on any JavaScript project.