Scrnify blog

Billing Update: How Usage Billing Works

Updated 7/15/2026

Hey there! Laura and Heidi here from SCRNIFY!

Scrnify now uses graduated usage pricing. After free usage, the first 2,000 billable units in each Stripe billing period cost €0.008 each. Additional units cost €0.005 each.

Try SCRNIFY and review current pricing.

Current Usage Billing

API captures use these billing rules:

  • The production Capture API remains generally available
  • Usage billing starts after free usage
  • The first 2,000 billable units in a Stripe billing period cost €0.008 each
  • Billable units 2,001 and above in that billing period cost €0.005 each
  • One successful, non-cached screenshot equals one usage unit
  • A video uses one usage unit per requested second of duration
  • Cached captures stay free
  • Failed captures do not count

If you only use Scrnify lightly, you may not need billing details right away. The lifetime free usage still gives you room to test the API before connecting billing. Try the weird cases first before you scale.

What Is a Usage Unit?

A usage unit is our simple way to measure image and video usage consistently. Successful, non-cached captures count as usage. Billable units are the units sent to billing after the free-usage rules below.

Capture type Usage units
1 screenshot 1 unit
5-second video 5 units
60-second video 60 units

So if you successfully capture one non-cached PNG screenshot, that is 1 usage unit. If you request and successfully capture a non-cached 10-second MP4 video, that is 10 usage units. Failed requests and cache hits add no units.

This matches the way the service uses browser time and infrastructure. Screenshots are quick. Videos take longer. Counting video by second keeps pricing predictable, instead of pretending a one-frame screenshot and a 60-second recording cost us the same thing.

The 100-Unit Lifetime Trial Is Request-Based

Before each request, Scrnify checks the account's prior lifetime usage. If it is below 100 usage units, the entire successful request is free, even when that request crosses the boundary. For example, with 95 units already used, a successful 10-second video is entirely free; there is no 5-free/5-billable split. Paid metering starts with the next eligible request.

This is meant for testing and small integrations. You can create an API key, send real capture requests, and verify that Scrnify fits your workflow before you connect billing.

First 100 Usage Units per Billing Period Are Free

Once billing is active, Stripe handles the billing period. In each Stripe billing period, the first 100 usage units are free.

After the recurring 100 free units are applied, remaining usage in that billing period is billable. Graduated rates apply to those billable units. The lower rate starts automatically after 2,000 billable units.

Billable-usage examples

These examples start with your first billable unit.

Billable units Price
500 €4
2,000 €16
5,000 €31
10,000 €56
15,000 €81
50,000 €256

Graduated pricing is marginal. For 5,000 billable units, the first 2,000 cost €16 and the next 3,000 cost €15, for a €31 total. Crossing 2,000 billable units does not reprice the first 2,000. Your actual bill depends on the free usage that applies and your usage within your Stripe billing period. See the current pricing page for rates.

Cached Captures Stay Free

Caching is still encouraged. If a capture is served from cache, it does not consume usage units and is not sent to billing.

For repeated captures of the same page state, use cache_ttl where it makes sense:

const params = new URLSearchParams({
    key: 'YOUR_API_KEY',
    url: 'https://example.com',
    type: 'image',
    format: 'png',
    width: '1920',
    height: '1080',
    cache_ttl: '3600',
})

const response = await fetch(`https://api.scrnify.com/capture?${params.toString()}`)

This is especially useful for previews, scheduled snapshots, and content that does not change every second.

What Happens If Billing Is Required?

If your account has used its lifetime free usage and billing is not active, the API returns 402 Payment Required.

For JSON responses, you will see an error like this:

{
    "error": "billing_required",
    "message": "Billing required after 100 free lifetime usage units. Visit /billing."
}

You can connect billing from the dashboard.

Why We Are Doing This

Scrnify runs real browsers for every fresh capture. That means compute, bandwidth, storage, and queue capacity all matter. We want pricing that reflects actual usage. Those costs increase with capture duration and volume.

Pay-as-you-go fits screenshot and video capture well because usage is often uneven. Some teams capture a few pages per week. Others batch thousands of captures during a deploy or reporting run. Marginal graduated rates keep small and larger workloads straightforward to calculate.

Quick Summary

  • The SCRNIFY Capture API is generally available
  • Usage beyond free usage is billed at graduated marginal rates
  • One successful, non-cached screenshot = one usage unit
  • One successful, non-cached video = its requested duration in seconds as usage units
  • The lifetime trial checks prior usage against 100 units and never splits a request at the boundary
  • First 100 usage units per Stripe billing period are free with active billing
  • Cached and failed captures do not count
  • First 2,000 billable units per Stripe billing period: €0.008 each
  • Billable units 2,001 and above in that billing period: €0.005 each

If you have questions or spot something confusing, email us at support@scrnify.com. We want billing rules and charges to remain predictable.

Start capturing and review current pricing.

Capture API

Start with one Capture

Create screenshots or videos without local browser setup.

Start capturing