Skip to main content
Public Preview

Wherobots Cloud meters usage in Spatial Units. Each engine has its own kind of Spatial Unit, metered a different way: A WherobotsDB Spatial Unit measures the computational horsepower provisioned to a runtime, and accrues for as long as that runtime runs. A RasterFlow Spatial Unit measures the data a RasterFlow task processes. This page covers RasterFlow Spatial Units. For WherobotsDB Spatial Units, see Managing Costs and Runtimes.
For up-to-date information on rates and prices, see Wherobots Pricing.

What is a RasterFlow Spatial Unit?

A RasterFlow Spatial Unit measures the data a RasterFlow task processes. One RasterFlow Spatial Unit is 1,000,000,000 units of that data, before any complexity factor is applied. A single pixel can carry several bands, and a task can run over several time periods, so the data a task processes is all three multiplied together:
Four inputs therefore determine the data a task processes:
  1. The area of your area of interest.
  2. The resolution you request.
  3. The number of bands.
  4. The number of time periods.
Because a Spatial Unit depends only on those inputs and the task you run, and not on how long the task takes, you can estimate a task’s cost before you run it.
Resolution is the largest lever. Because resolution is squared in the data size calculation, increasing the resolution by a factor of two (60 cm to 30 cm, for example) quadruples the data processed. Area, bands, and time periods each scale linearly.
Where the band count comes from depends on the task. For mosaicking, it is the number of bands you request. For tasks that run on an existing store (inference, Build Multiscales, and Mosaic Vectorization), it is the band count of that input store, which may differ from the mosaic you started with. Mosaic Vectorization, for example, usually runs over a single-band model prediction, even when the mosaic behind it had four bands.
A 100,000 km² Sentinel-2 mosaic at 10 m resolution with 4 bands, over 1 time period:

Time periods

A time period is a distinct span of time for which RasterFlow produces a separate output. Most tasks use a single time period, but you can request more: running the Fields of the World (FTW) model across two years produces one result per year, and twice the RasterFlow Spatial Units of a single year.

How a task’s cost is calculated

Every RasterFlow charge follows the same path, from the inputs you choose to the cost on your bill. A task’s cost is the RasterFlow Spatial Units it is billed for, multiplied by the price of that task: cost = Spatial Units billed × price per Spatial Unit. Five components determine that cost:
The pixels a task reads, across every band and time period: pixels × bands × time periods. Your area of interest and the resolution you request determine the pixel count, so this is the part of the calculation you control directly.
The unit RasterFlow usage is metered in. One RasterFlow Spatial Unit is 1,000,000,000 units of data processed, so a task’s Spatial Units are the data it processes divided by 1,000,000,000.
A multiplier applied to the Spatial Units of mosaicking and inference, reflecting how much processing each performs per pixel. The Mosaicking Complexity Factor varies by dataset and the Inference Complexity Factor varies by model. Build Multiscales and Mosaic Vectorization apply no such multiplier.
Each task is billed a minimum of 1 RasterFlow Spatial Unit at that task’s price, no matter how small the area of interest. If a task’s calculated Spatial Units fall below the minimum, you are billed the minimum instead.
Each of the four RasterFlow tasks has its own price per Spatial Unit. Because the price per Spatial Unit differs by task, add up the cost of a multi-task workflow rather than its Spatial Units.

RasterFlow tasks and pricing

Each of the four RasterFlow tasks has its own price per RasterFlow Spatial Unit. Mosaicking and inference also apply a complexity factor, a multiplier reflecting how much processing they perform per pixel, so the Spatial Units they consume reflect the work they actually do. The Mosaicking Complexity Factor varies by dataset, and the Inference Complexity Factor varies by model. Build Multiscales and Mosaic Vectorization apply no such multiplier. For the current price of each task, see Wherobots Pricing.

Mosaicking

Mosaicking builds an analysis-ready raster mosaic from an imagery dataset for your area of interest. Mosaicking Complexity Factor: varies by dataset. Datasets that require cloud removal and compositing, such as Sentinel-2, go through additional mosaic pre-processing. Datasets that are read directly, such as NAIP, have a reduced complexity factor. For more information, see RasterFlow Datasets.

Inference

Inference runs a model over your data, such as segmentation or feature extraction. Inference Complexity Factor: varies by model. Each model’s factor is derived from its throughput (bytes processed per second), normalized to the SAM3 reference model: a model that processes imagery more slowly than SAM3 has a higher factor, and a faster model has a lower one. For more information, see RasterFlow Models.

Build Multiscales

Build Multiscales generates multi-resolution overviews of a mosaic, so it draws quickly at any zoom level. Build Multiscales consumes one RasterFlow Spatial Unit for every 1,000,000,000 units of data it processes.

Mosaic Vectorization

Mosaic Vectorization converts a raster mosaic or prediction into vector features. Mosaic Vectorization consumes one RasterFlow Spatial Unit for every 1,000,000,000 units of data it processes. It usually runs over a single-band model prediction, so it processes a quarter of the data of a four-band task over the same area.

Worked examples

Mosaicking by dataset and resolution

Fixed area of interest: 10,000 km², 4 bands, 1 time period.
DatasetResolutionPixelsData processed (pixel values)Mosaicking Complexity FactorSpatial UnitsSpatial Units billed
NAIP30 cm111,111,000,000444,444,000,0000.1×44.444.4
NAIP60 cm27,778,000,000111,111,000,0000.1×11.111.1
Sentinel-210 m100,000,000400,000,0001.0×0.41.0 (minimum charge applied)

Field boundary detection with Fields of the World

Area of interest: 100,000 km², Sentinel-2 at 10 m, 8 bands, 1 time period. The Fields of the World model uses 4 bands for the Planting Season and 4 bands for the Harvest Season.
TaskBandsData processed (pixel values)Complexity FactorSpatial Units
Mosaicking (Sentinel-2)88,000,000,0001.0×8.0
Inference (FTW)88,000,000,0000.2×1.6
Build Multiscales88,000,000,000none8.0
Mosaic Vectorization11,000,000,000 pixel valuesnone1.0
Total18.6
Mosaic Vectorization runs over the model’s prediction, which is a single band, so it processes one eighth of the data the eight-band tasks do.

What you are charged for

Beyond the per-task calculation, these situations affect what appears on your bill:

Viewing your costs

Look up the RasterFlow Spatial Units consumed and the cost of any RasterFlow execution in Workload History. Each execution lists its tasks, the Spatial Units each consumed, and the resulting charge.

Controlling your costs

Every RasterFlow Spatial Unit comes from your data, so you control your cost directly. To reduce the RasterFlow Spatial Units a task consumes:
RasterFlow Spatial Units scale linearly with area. Validate a workflow on a small area of interest before running it at full scale.
Resolution has a squared effect, so it is the largest lever. Doubling the pixel size cuts the data processed to a quarter.
Band count scales linearly. A three-band request costs three-quarters of a four-band request over the same area.
Each additional time period is a separate set of imagery to process. Two years of output is twice the RasterFlow Spatial Units of one.

Next steps

Get Started with RasterFlow

Learn about RasterFlow’s key features and capabilities.

Managing Costs

Keep WherobotsDB Spatial Unit consumption low while testing and developing.

Workload History

Review the tasks you ran and the units they consumed.

Wherobots Pricing

See current tiers, rates, and plan details.