Skip to content
ModuleAuditBeta

Find vulnerable npm packages in your live site.

Enter a public URL. We identify npm packages and versions where evidence is available, check known vulnerability advisories, and show how each package was detected.

Keep checking after launch with scheduled audits and email alerts.

No repository access. No CI plugin. Nothing to install.

For sites you own or run. 3 free audits as a guest, no account. for 10 free audits, schedules and email reports.

From URL to understanding. See how Module Audit works.

Your public URL → detected packages → advisories and evidence

How the scan works

How a URL becomes
a vulnerability report.

See which packages were detected, how we identified them and which advisories need review.

Explore the example report
01

Load your public site.

Give us the URL of a site you own or manage. The scanner loads the page and inspects the JavaScript it serves.

Public website / web-apphttps://fernhill.example

Guest audits inspect the entry page and its JavaScript. Signed-in users can enable crawling to a chosen depth on the same origin, and scrolling to discover more JavaScript.

02

Identify packages and versions.

Runtime values, source maps, file hashes and other traces help identify npm packages, even in minified code. Each detection includes its evidence; an exact version is not always available.

Found packages with evidence:
  • reactsymbol match>= 18.0.0
  • astrometa generator5.13.2
  • clipboardcomment banner2.0.11
  • @popperjs/coresourcemapunknown
  • bootstrapruntime5.3.8
03

Review advisories and evidence.

We check detected packages against known vulnerability advisories. Review severity, affected versions and patch information where available. Possible matches without an exact version stay unverified.

Your audit reportpackage → version → advisory → next step

See the finding.
Follow the evidence.

Review the scan totals and AI analysis, then explore detected packages, their evidence and matching advisories.

Based on a recorded scan, with the site name and URLs replaced by fernhill.example. Saved reports also include AI summaries, changes since the previous audit and PDF export.

Save reports for your site
Example audit Completed

fernhill.example

Based on a real scan · 2026-09-10 · Site name and URLs anonymized

5packages detected
19confirmed advisories
2unverified advisories
1 critical4 high11 moderate5 low2 unverified

AI analysis

Overall risk This scan detected 5 packages and recorded 19 confirmed advisories, plus 2 unverified matches. Prioritize astro@5.13.2: the recorded findings include a critical advisory involving AVIF image optimization.

What changed No previous audit is included in this example, so new or resolved advisories cannot be determined.

Priorities

  1. Review the critical astro advisory and check whether your deployment uses the affected image optimization feature.
  2. Check the advisory’s remediation guidance before updating. Patch versions were not recorded in this sample.
  3. Confirm the exact releases of react >= 18.0.0 and @popperjs/core, then run another audit to reassess their advisories.

Caveats A package-version match does not prove exploitability. The React matches remain unverified. No advisories were recorded for [email protected], [email protected] or @popperjs/core; this does not establish that they are vulnerability-free.

This is a dated example, not a current assessment. Confirm findings against your own build before acting.

Scheduled audits.
Email when something changes.

Save your site and choose a schedule. Get a report at your account email after every audit, or only when a new confirmed advisory appears. With the Oversee subscription tier, choose up to ten recipients per site. Each report shows what changed and links to the evidence.

app.example.com
Daily at 06:00 UTC · email only when new advisories appear
RunChangesEmail
Tue 06:00Queued
Mon 06:00+1 high Sent to 2
Sun 06:00No changeNot sent
Sat 06:001 resolvedNot sent
Fri 06:00No changeNot sent
Thu 06:00No changeNot sent
One token per run. Resolved advisories never trigger an email in this mode.
From
Module AuditMon 06:01
To
[email protected], [email protected]
Subject
[moduleaudit] 1 new confirmed advisory on Example app
Audit report: Example app
https://app.example.com · 38 packages detected
1 high2 moderate1 low

1 new confirmed since the previous audit

AI analysis

One new high-severity advisory since yesterday’s audit: astro@5.13.2 is affected by reflected XSS via the server islands feature (GHSA-wrwg-2hg8-v723). Fix first: upgrade astro past 5.15.6, then run the audit again to confirm.

Open the full reportEvery package, its evidence, and a PDF.
Illustration: a week of daily audits on a sample site. The subject line, counts and layout follow the real report email, and the advisory is one the audit above actually found.
Hourly to weekly
Pick an interval per site, and optionally a fixed start time in UTC. How often a site may run depends on your plan.
Only when it matters
Mail after every audit, or only when a new confirmed advisory appears. A quiet week stays quiet, and the subject line says what changed.
Whoever needs to know
Reports go to your account email. With the Oversee subscription tier, choose up to ten recipients per site: you, a client, a shared security inbox. Every email links to the full report and its PDF.
No silent gaps
Each run costs one token. If you run out, the run is skipped, the schedule stays on, and an email tells you so.

For the people who ship the web.

Built for solo developers and indie makers looking after their own apps or client sites. Check the JavaScript you deployed, share the findings with whoever maintains it, and keep monitoring after launch.

Start with 10 free audits

Pay-as-you-go tokens and subscription plans.

3 free audits as a guest; 10 free audits after registration. No card required. Buy tokens as needed, or choose a subscription for regular monitoring. Every plan includes AI summaries, PDF export and email reports.

No subscription required. Buy tokens as needed with a one-time purchase. They never expire. View token packs.

Inspect

For a personal project or a single production app.

$9/ month
  • 100 audits per month
  • Up to 3 sites
  • Daily schedules
  • 30 days of audit history
  • AI summaries & PDF reports
  • Email reports to your account address
Monitor

For agencies and teams shipping several apps.

$19/ month
  • 300 audits per month
  • Up to 15 sites
  • Schedules down to every 6 hours
  • 2 months of audit history
  • AI summaries & PDF reports
  • Email reports to your account address
Oversee

For platforms that need to know within the hour.

$39/ month
  • 1000 audits per month
  • Up to 100 sites
  • Hourly schedules
  • 3 months of audit history
  • Priority scan queue
  • AI summaries & PDF reports
  • Email reports to up to 10 custom recipients per site
Token packs

One audit costs one token. Buy packs on their own — no subscription needed — or add them to any plan. Purchased tokens never expire. Every new account starts with 10 free tokens, once per email inbox.

25
tokens
$5
$0.20 / audit
Buy
100
tokens
$15
$0.15 / audit
Buy
500
tokens
$45
$0.09 / audit
Buy

Frequently asked questions

About npm audit, free audits and automated alerts.

  • What is Module Audit?

    Module Audit is a website vulnerability monitoring tool for small businesses and developers. Enter a public URL for a site you own or manage to identify npm packages in its deployed JavaScript and check for known module vulnerabilities. No repository access or installation is required.

  • How does Module Audit complement npm audit?

    The npm audit command checks dependencies in your project. Module Audit inspects the JavaScript served by your live website, identifies packages and checks them against known vulnerability advisories. Use both to check your project dependencies and what you actually deployed. Module Audit cannot see server-only packages or guarantee detection of every package in a minified bundle.

  • Who is Module Audit for?

    Module Audit helps small business teams monitor business websites and client apps. It also serves freelancers, indie and individual developers, vibe coders building with AI, and citizen developers creating business apps with low-code tools. It checks publicly reachable JavaScript, so coverage depends on what your site exposes.

  • How do automated vulnerability alerts work?

    After registration, save your site and choose an audit schedule. Receive a report at your account email after every scheduled audit, or an alert only when a new confirmed advisory appears. The Oversee subscription tier lets you choose up to ten recipients per site. Schedules range from hourly to weekly depending on your plan. Each audit uses one token; if your balance runs out, audits are skipped and you are notified by email.

  • Can I run free audits on my website?

    3 free audits as a guest; 10 free audits after registration. No card required. Guest audits are manual. Registration unlocks scheduled audits and email reports. The free audits are a starting allowance; buy a plan or token pack when you need more.

  • How much does an audit cost?

    One audit uses one token, whether you start it manually or run it on a schedule. Subscription plans include a monthly token allowance. You can also buy token packs, which never expire. Your plan determines how many sites you can manage and how often scheduled audits can run.

  • What does an unverified advisory mean?

    An unverified advisory is a possible match that the available evidence cannot confirm, for example when a package is identified but its version is unknown. Review the package evidence and check your own build before deciding whether the advisory applies. Module Audit is in beta, so detections can also be missed or incorrect.

  • Can Module Audit crawl and scroll my site?

    Guest audits inspect the entry page and its JavaScript. Signed-in users can optionally enable crawling on the same origin, with a depth of 1–4 and up to 20 pages, and scrolling to discover more JavaScript. Coverage is limited to the pages and assets observed; the scanner does not click controls, submit forms or inspect every application state.

  • Can I delete my reports?

    Yes. Deleting a site from its settings removes that site, its schedule and all of its reports. Detection methods continue to change during beta, so a later audit of the same URL may produce different results.

  • Can I share the results with my developer or client?

    Yes. Download the full report as a PDF to share with your developer, client or team. The Oversee subscription tier lets you choose up to ten email recipients per site, including addresses other than your account email. Other plans send reports only to your registered account email. Email reports include a summary and a link to the full report.

Read the official npm audit documentation for project dependency checks, or compare audit plans and schedules for your deployed sites.

What it cannot do

  • Minified bundles without banners, metadata or source maps can be identified by name but not version. Those packages get unverified advisories, never confirmed ones.
  • Guest audits inspect the entry page and its JavaScript. Signed-in users can enable same-origin crawling and scrolling. Coverage is limited to the pages and assets observed; it does not include every application state.
  • The default engine audits direct matches. Transitive dependencies are only covered when the server runs the real npm audit engine.
  • It audits what is deployed, not what is in your repository. That is the point — but it means it will not see server-only packages that never reach the browser.

Check your live site.
Keep track of what changes.

Start with a report, then schedule repeat audits and email alerts. Buy tokens when you need them; no subscription required.

Start with 10 free audits