Skip to main content
Developer Tools

Real User Monitoring
& SEO Automation

Get real field data for Core Web Vitals including INP. Add our lightweight script to see what Google actually measures.

RUM Script

Real User Monitoring

The problem: Lab tests (like Lighthouse) can't accurately measure INP because it requires real user interactions. Google uses field data from real users for Core Web Vitals rankings.

The solution: Our lightweight RUM script (~3KB) collects real Core Web Vitals from your actual users:

INP (Interaction to Next Paint)

The metric that replaced FID - measures real responsiveness

LCP, CLS, FCP, TTFB

All Core Web Vitals in one script

P75 Aggregation

Same percentile Google uses for rankings

Privacy Focused

No PII collected, anonymous session IDs only

Why this matters

CrUX (Chrome UX Report) only provides field data for sites with 1,000+ daily visits. With our RUM script, any site can get real field data.

Add to <head>
<!-- Rankture RUM - Real User Monitoring -->
<script>
(function(w,d,k){
  w.RanktureRUM={key:k,queue:[],
    push:function(m){this.queue.push(m)}};
  var s=d.createElement('script');
  s.src='https://rankture.com/rum.js';
  s.async=true;
  d.head.appendChild(s);
})(window,document,'YOUR_API_KEY');
</script>

Get Your API Key

Add your website to Rankture, then find your RUM API key in the website settings.

~3KB
Gzipped size
0ms
Blocking time
FREE
All plans

Lab Data vs Field Data

Lab Data

Lighthouse, PageSpeed Insights

  • Consistent, reproducible
  • Good for debugging
  • Can't measure real INP
  • Simulated environment
  • Not what Google uses for rankings

Field Data (RUM)

Real users on your site

  • Accurate INP measurement
  • Real device variety
  • Real network conditions
  • Real user interactions
  • What Google uses for rankings
★ Recommended

CLI Tool

@rankture/cli

A fast, offline-first SEO checker that runs on your local files. Perfect for CI/CD pipelines, pre-commit hooks, or manual checks before deployment.

15+ File Types

HTML, Astro, React/Next.js, Vue/Nuxt, Svelte, Markdown, and more

17 SEO Checks

Meta tags, headings, images, links, schema, accessibility

CI/CD Ready

Exit codes, JSON output, GitHub Actions examples

Watch Mode & Git Integration

--watch, --changed, --staged for pre-commit hooks

Supported Frameworks

HTML Astro React/Next.js Vue/Nuxt Svelte Markdown Nunjucks Liquid
Installation
# Global install
npm install -g @rankture/cli

# Or use with npx (no install)
npx @rankture/cli check ./dist

# Or add to your project
npm install --save-dev @rankture/cli
Usage
# Check built HTML files
rankture check ./dist

# Check source files directly
rankture check ./src/pages

# Fail build on critical issues
rankture check ./dist --fail-on critical

# Watch mode for development
rankture check ./dist --watch

# Only check git changed files
rankture check ./src --changed

# Pre-commit hook (staged files only)
rankture check ./src --staged

# JSON output for CI
rankture check ./dist -f json -o report.json

# Validate sitemap and robots.txt
rankture validate sitemap ./public/sitemap.xml
rankture validate robots ./public/robots.txt
.github/workflows/seo.yml
name: SEO Check
on: [push, pull_request]

jobs:
  seo:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
      - run: npm ci && npm run build
      - run: npx @rankture/cli check ./dist --fail-on critical

Coming Soon

More developer tools in the pipeline

Coming Q1 2026

REST API

Programmatic access to all Rankture features. Build custom integrations and dashboards.

GET /api/v1/audits
POST /api/v1/audits/run
GET /api/v1/rum/metrics
Coming Q2 2026

Integrations

Connect with GitHub, GitLab, Slack, and more. Get SEO checks in your workflow.

GH
GL
SL

Frequently Asked Questions

Does the RUM script slow down my site?

No. The script is only ~3KB gzipped, loads asynchronously, and has zero blocking time. It uses PerformanceObserver APIs that run passively and sendBeacon to report metrics without blocking the UI.

What data do you collect?

Only performance metrics: INP, LCP, CLS, FCP, TTFB, viewport size, device type, and connection type. We don't collect any personally identifiable information (PII), IP addresses, or browsing history. Session IDs are randomly generated and not linked to user accounts.

How is this different from CrUX?

Chrome User Experience Report (CrUX) only provides data for sites with 1,000+ daily visits, and only shows origin-level data for most sites. Our RUM script works on any site regardless of traffic volume and can provide page-level metrics.

How much data do I need for accurate metrics?

We recommend at least 100 samples over 7 days for statistically meaningful P75 values. With less data, metrics are shown as "limited data" in your dashboard. More data = more accuracy.

Is this GDPR compliant?

Yes. We don't collect any personal data, only anonymous performance metrics. No cookies are set, no IP addresses are stored, and session IDs are random strings that can't be linked to individuals. This makes it exempt from cookie consent requirements.

Start Collecting Real Field Data

Get accurate INP measurements from your actual users. Free on all plans.