Robot vision API alternatives: who serves what, at which meter
No vendor sells a product named a robot vision API. The perception layer is sold anyway, by six kinds of seller. Their meters differ more than their model lists. Roboflow bills credits per image on routes built for labeling. Replicate bills per run, and its SAM 2 page prints a 42 second typical run. fal bills a media API per request. Meta serves its own segmenter one noun phrase at a time. Open weights split between free downloads and gated requests, and license splits decide the choice as often as speed does. This page maps every row, dated October 28 2026, then names the fit for each robot job.
Last verified: 2026-10-28. Every rate below is a US dollar amount unless the sentence names another unit. Every rate names its source and its read date.
The map, one table
Read the meter column first. Two sellers can serve the same model at two prices, because the meter differs. Each cell carries one basis, stated in its label. Every fact was read on the seller's own page, October 28 2026.
| Seller | What you send | What comes back | The meter, and its printed basis | Fit for a loop |
|---|---|---|---|---|
| Roboflow serverless | An image, plus a prompt for SAM 3 routes | Masks or boxes from SAM 3, RF-DETR, YOLO rows, Depth Anything V3 | Credit per image (SAM 3: 0.0005 credits per image, their pricing page) | Labeling speed, not camera rate |
| Replicate, meta/sam-2 | An image, prompt driven | Masks, large variant only, image inputs only | Per run (about 0.041 per run, 24 runs per US dollar, their model page) | No: 42 second typical run |
| fal, SAM 3 image | An image plus text, points, boxes, or a mask | Up to 32 masks per request, 1024 by 1024 | Per request (0.005 per request, their model page) | Bursty work, if the wait fits |
| Segmind, SAM v2 image | An image plus points, boxes, or a mask | Masks | GPU second (0.0072 per GPU second, serverless, their pricing page) | No: 1.57 second typical run |
| Meta media segmentation | An image plus one short noun phrase | One box and one mask per match, streamed | Per 1,000 images (2.50 per 1,000 images, 0.20 per 1,000 frames, their pricing-rate-limits page, read 2026-10-29) | No: one object type per request |
| Ultralytics deployments | An image, to your own model | Boxes, masks, or poses, per your model | Platform credits (25 US dollars of credits at signup, their docs) | Depends on your deployment |
| Hugging Face | Nothing you can call | Weights only | Not served: the large SAM 2.1 row carries no provider | N/A |
| Gemini, general multimodal | An image plus a text ask | Mask polygons on a 0 to 1000 grid, via a response schema | Tokens, 258 per 768 pixel tile (their docs) | Occasional queries |
| Open weights, self hosted | Your own frames | Everything the model has | Power and your time (license split below) | Yes, when the machine is |
| This platform's vision route | Whole frames as file parts, no prompt fields | Masks or depth, plus a usage block | Per image (the platform's model data, via the pricing page) | Built for it |
One cell stays empty by rule. Roboflow prints no credit rate for Depth Anything V3, on its model page or its pricing page. Meta's rate sits on the pricing-rate-limits page, not the docs page. A missing rate is a question for the vendor, not a number to guess.
The sellers, one by one
Roboflow: the labeling platform that grew an API
Roboflow began as a labeling tool, and its API shows it. The serverless endpoint takes an image, plus a prompt where one applies. It serves the RF-DETR and YOLO detection rows, SAM 3 for open vocabulary masks, and Depth Anything V3 for depth (serverless API guide). The pricing page bills credits. SAM 3 costs 0.0005 credits per image, their printed 2,000 images per credit. A credit costs 3.90 at the entry paid tier, and 2.86 at the largest (Roboflow pricing, read 2026-10-28). The free tier carries 10 credits a month.
The strength is breadth under one account. The catch for a robot is the platform's shape. A prompt-driven route answers a question about one image. A loop asks about every image, at a rate no credit route is built for. Roboflow also streams SAM 3 at 0.4 credits per hour for video. That hour meter is the closest any labeling vendor here comes to a loop-shaped price.
Replicate: a model market, priced per run
Replicate serves Meta's own SAM 2 row. The page is candid about scope. Image inputs only. The large variant only. A typical run of 42 seconds (meta/sam-2 on Replicate). The meter is per run, about 0.041, with their printed math of 24 runs per US dollar. Community uploads add Depth Anything V3 in mono and metric forms. The mono row prints about 0.0012 per run.
Per-run pricing is honest for what it is. What it is, is a job market. A 42 second wait is a labeling wait. No loop pays that per frame. For one-off masks on single frames, the market works. Whether Replicate serves robot policies at all is a different question, with its own receipts on the Replicate robotics page.
fal and the media API class
fal is a media host, and it carries the SAM line as media APIs. The SAM 3 image route takes text, points, boxes, or a reference mask. It returns up to 32 masks a request, and prints 0.005 per request, their own math of 200 segmentations per US dollar (fal SAM 3). Segmind serves SAM v2 at 0.0072 per GPU second on the serverless tier, with a printed 1.57 second typical run (Segmind pricing). Slaice serves SAM 2 at 1 token per call, about 5 seconds a call (Slaice).
This class matters for a reason the robot census misses. The big media hosts carry no robot policies. That fact is eight hosts deep on the big hosts page. Two of them still carry perception primitives. fal serves the SAM line. Replicate serves SAM 2, one section up. A sentence that lumps the two facts into one claim is half wrong, and the wrong half is the perception half. For those two hosts the honest split reads: no policies, yes masks.
Ultralytics: bring the model, rent the endpoint
Ultralytics serves the YOLO family you deploy, on one endpoint per model. Detection, masks, and pose are among the tasks. Credits meter the use. Signup pays 25 US dollars of credits with a work email, top-ups run 5 to 1,000, and purchased credits never expire (Ultralytics docs). The license note weighs more than the price. Free and paid plans run under AGPL. Commercial use without AGPL needs a separate license from them.
Meta: the model owner, one noun phrase at a time
Meta serves its own current segmenter over the Responses API. The prompt law is printed on the docs page. Send a short noun phrase that names one concrete object. Want several object types, send several requests (Meta media segmentation). The endpoint now runs SAM 3.1. The public rate prints on the pricing-rate-limits page: 2.50 per 1,000 images and 0.20 per 1,000 frames, read 2026-10-29 (Meta pricing and rate limits). That shape is a labeling tool with a first-party model behind it. It is the same one-object-per-request class the category head describes.
The general multimodal row
A general vision language model can return masks. Gemini does it with a response schema, and the recipe is documented (image understanding docs). The meter is the catch. Images bill as tiles, 258 tokens per 768 by 768 tile. Every frame pays photo prices for geometry. The robot vision API page walks this row in full, so it stays one row here.
Hugging Face: the weights, not the wait
The SAM 2.1 checkpoints sit among the most downloaded mask models on Hugging Face, and the large one carries no serving provider. Its model API returned no provider mapping, read October 28 2026. The platform's own pricing docs say its first-party inference has focused on CPU work since July 2025, with GPU work routed to third parties (pricing docs). For perception, Hugging Face is where you download, not where you call.
The prompt question decides your class
Every hosted row above sorts onto one axis. Does the route want a prompt, or does it take the whole frame?
Prompt-driven routes are the majority. SAM 3 on Roboflow takes a text concept, though Roboflow's own detection rows take the whole frame. fal takes text, points, or boxes. Segmind takes points, boxes, or a mask. Meta takes a noun phrase. Prompts give precision, and precision is right when a pipeline already knows what it wants. The cost is the naming load. Prompts name what to find, and a whole frame needs many names. A loop pays that cost forever.
Whole-frame routes return everything they find. Your code filters. That is the loop-native shape, and it is rare. This platform's vision route takes frames as file parts and refuses prompt fields outright, a 400 with the field named (route contract). Automatic mask generation, no prompt at all, has been in the SAM line since its first generation (SAM 2 repository).
Latency sorts the same axis. A 42 second typical run on Replicate. 1.57 seconds on Segmind. About 5 seconds at Slaice. Those are human-patience numbers, printed by the sellers. A camera-rate loop wants answers in tens of milliseconds. The loop budget math lives on the category head. The short version: compare the wait before the price. A meter you can afford on a per-second endpoint can still break you on a per-frame deadline.
The license split, stated once
The open weights of this layer are not one license.
| Weights | License | Where it is printed |
|---|---|---|
| SAM 2 and SAM 2.1 | Apache 2.0, checkpoints free to download | SAM 2 repository |
| SAM 3 | The custom SAM License, updated November 19 2025, checkpoints behind an access request | SAM 3 repository |
| Depth Anything 3 small and base | Apache 2.0 | DA3 repository |
| Depth Anything 3 large and giant | CC BY-NC 4.0, not a commercial grant | Same repository's model table |
| YOLO family on hosted plans | AGPL on Ultralytics free and paid plans, separate commercial license otherwise | Ultralytics docs |
The SAM 3 row is the one that surprises teams. The SAM 2 line is Apache 2.0, and that license made masks cheap to self host. Its successor ships under custom terms, with checkpoints behind an access request. So "we self host SAM" stopped being one answer in 2025. A hosted route absorbs the question. The operator carries the license, you carry the call. That is a real argument for hosted rows on young families. It is worth exactly the operator's right to serve the model, and that right is a question to ask any vendor, this one included.
Where self host wins, and where it does not
Self host wins the steady loop. A robot that runs a camera at frame rate for hours, near its data, under a latency ceiling, is the case the open weights were built for. SAM 2.1 downloads with one command. DA3 small runs on a laptop class machine, and the CPU tier page carries the measured band. The glue between a segmenter and a depth model is yours to write and yours to keep. The Jetson versus cloud guide prices the onboard trade.
Hosted rows win the burst, the trial, and the no GPU team. Evaluation batches. A new model tried before any hardware arrives. A second opinion on hard frames. Those are per-image jobs, and per-image meters fit them. The two halves are not rivals. A stack can host the burst and own the loop, then pull a row in house when its bill says it is steady.
This platform's rows, dated
The state as of October 28 2026, mirrored from the platform's own model data. The models index is the live catalog, and it beats this page's date.
The vision route serves two rows on the public list, listed since the October 6 2026 requests. Those rows are sam2.1-base, the mask model, and da3-small, the depth model. The large mask tier, sam2.1-large, is not on the public list, and no date rides with that fact. Scene reasoning rides molmo2-er on the chat route, token metered, listed the same day. The action half of the stack is a different lane, and the VLA versus VLM guide draws that line.
The route contract is published and short. Frames go as file parts in one request. The fields are model, file, and a format switch, nothing else, and a prompt field of any name is refused with a 400 that names it. A request with three file parts bills three images. A request the route refuses bills nothing. Every live rate renders on the pricing page from the platform's model data, never typed by hand:
| Model | Context | $/1M in | $/1M out | $/1M cached |
|---|---|---|---|---|
| Qwen | ||||
| qwen3.8-27b | 262K | $0.35 | $2.55 | $0.105 |
| qwen3.6-35b | 131K | $0.11 | $0.8 | $0.044 |
| Minimax | ||||
| minimax-m2.7 | 197K | $0.24 | $0.95 | $0.072 |
| Muse | ||||
| muse-glimmer-30b | 131K | $0.28 | $1.2 | $0.084 |
| Ornith | ||||
| ornith-1.5-35b | 100K | $0.35 | $2.55 | $0.105 |
| ornith-1.5-9b | 100K | $0.1 | $0.3 | $0.03 |
| Glm | ||||
| glm-5.3-flash | 1049K | $0.11 | $0.35 | $0.033 |
| Deepseek | ||||
| deepseek-v4-flash-0731 | 1311K | $0.15 | $0.42 | $0.045 |
| Gemma | ||||
| gemma-4-31b-it | 262K | $0.22 | $0.49 | $0.066 |
| Deepseek | ||||
| deepseek-v4-pro | 1000K | $1.13 | $2.21 | $0.339 |
| deepseek-v4.1-flash | 1000K | $0.19 | $0.71 | $0.06 |
| deepseek-v4.1-flash-1017 | 1049K | $0.16 | $0.65 | $0.003 |
| Glm | ||||
| glm-5.3 | 1000K | $1.32 | $4.25 | $0.4 |
| Flux | ||||
| flux-1-schnell | — | $0.003/image | ||
| flux-pro-1.1 | — | $0.04/image | ||
| Chatterbox | ||||
| chatterbox-tts | — | $25/1M chars | ||
| Kokoro | ||||
| kokoro-tts | — | $15/1M chars | ||
| pocket-tts | — | $16/1M chars | ||
| Audio | ||||
| audio8-tts | — | $8/1M chars | ||
| Hayamimi | ||||
| hayamimi-stt | — | $0.6/audio-hr | ||
| Bge | ||||
| bge-m3 | — | $0.05/1M tokens | ||
| bge-reranker-v2-m3 | — | $1.5/1k searches | ||
| Ocr | ||||
| ocr-print | — | $1/1k pages | ||
| ocr-archival | — | $3/1k pages | ||
| Whisper | ||||
| whisper | — | $0.12/audio-hr | ||
| Iab | ||||
| iab-2x | — | $0.7/1k pages | ||
| iab-3x | — | $0.7/1k pages | ||
| Gliner | ||||
| gliner-extract | — | $0.9/1k searches | ||
| Jev | ||||
| jev-fast | 1K | $0.03 | $0 | — |
| jev-causal | 1K | $0.03 | $0 | — |
| jev-batch | 1K | $0.03 | $0 | — |
| Wemm | ||||
| wemm-embed | — | $0.09/1M tokens | ||
| Molmo | ||||
| molmo2-er | 8K | $1 | $5 | $0.5 |
| Cosmos | ||||
| cosmos-reason2-2b | 4K | $0.1 | $0.4 | $0.05 |
| Sam | ||||
| sam2.1-base | — | $0.02/image | ||
| Da | ||||
| da3-small | — | $0.05/image | ||
| Smolvla | ||||
| smolvla | — | $0.001/call | ||
| Openvla | ||||
| openvla-oft | — | $0.006/call | ||
| Act | ||||
| act | — | $0.001/call | ||
A first call, on a row that serves:
curl -sS $IRONSTRATUM_BASE_URL/v1/vision \
-H "Authorization: Bearer $IRONSTRATUM_API_KEY" \
-F "model=sam2.1-base" \
-F "file=@cam0.jpg" \
-F "response_format=json"
The answer carries the model's findings and a usage block with the billed image count. Spend draws down one prepaid wallet across every lane, and the balance is the hard stop. Keys start at the signup page. The robot lanes are young on every platform, this one included. Read the dated state, run the first call, and watch the meter before scaling anything.
Pick by job
| Your job | The row that fits | Why |
|---|---|---|
| Label a batch tonight | Roboflow serverless | Credit per image, broad model list, labeling-first tooling |
| One mask, one frame, no setup | Replicate or fal | Per run or per request, one key, nothing else |
| Feed a loop at camera rate | A whole-frame route, or self host | Prompt-driven routes are not built for per-frame deadlines |
| Depth on a CPU budget | Self host DA3 small, or the hosted da3-small row | Apache 2.0 weights, measured CPU band on the tier page |
| Try SAM 3 before licensing it | A hosted SAM 3 row | The operator carries the SAM License question |
| Ship a product on masks | SAM 2.1 weights, or a hosted SAM 2 route | Apache 2.0 end to end, no custom terms |
| Scene reasoning, not geometry | A vision language model on a token meter | A different output class |
Frequently asked questions
Is there a robot vision API?
Not under that name. The search results for the phrase are a hobby library, generic cloud docs, and integrator pages, captured October 28 2026. What exists is the perception layer in other wrappers. Labeling platform credits. Per-run model markets. Media APIs per request. One noun-phrase endpoint from the model owner. Per-image robot routes. The table above is that market.
Is Roboflow a robot vision API?
Partly. Roboflow serves SAM 3, its own detection rows, and Depth Anything V3 on one serverless endpoint, billed in credits per image. Among the third-party sellers in the table, it comes closest to a one-stop perception shop. Its shape stays labeling-first. One object per prompt, and credits that fit label budgets more naturally than loop budgets.
Can I call SAM 2 or SAM 3 through an API?
Yes, several ways, with different meters. Replicate serves the official SAM 2 row per run. fal serves SAM 2 and SAM 3 on image routes. Segmind serves SAM v2 per GPU second. Meta serves its own SAM 3.1 per noun phrase. Hugging Face serves neither. Its flagship SAM 2.1 checkpoint carried no provider mapping, read October 28 2026. Licenses differ by generation, Apache 2.0 for SAM 2.1, custom terms for SAM 3. The split sits on the license table above.
Is a hosted perception API fast enough for a control loop?
None of the prompt-driven ones advertise that they are. The sellers' own pages print 42 seconds typical on Replicate's SAM 2, 1.57 seconds on Segmind, and about 5 seconds at Slaice. A control loop wants answers in tens of milliseconds at camera rate. Whole-frame per-image routes are built for that budget. For anything else, measure the wait on your own frames first.
What does a robot vision API cost?
It depends on the meter, not the model. The same SAM family bills per run, per request, per GPU second, or per credit, depending on the counter above the model. Rates here are named relations with sources and dates. For this platform's rows, every live rate renders on the pricing page from the platform's model data. The pricing units glossary explains the per-image and per-call shapes.
Can I call robot vision on this platform today?
Yes, on two vision rows. As of October 28 2026, sam2.1-base and da3-small are on the public list and serve on the vision route, listed since the October 6 2026 requests. The route meters per image, takes multipart form data, and returns the model's findings plus a usage block. The large mask tier, sam2.1-large, is not on the public list, and no date rides with that fact. The models index is the live catalog.
Last verified: 2026-10-28