Skip to main content
Kettio scores ad creative against a simulated audience and returns a ranking. You send image URLs and optional ad copy, you name the audience you are buying, and you get back an ordered list with a rationale for each asset. The intended use is pre-flight triage: deciding which creatives are worth putting spend behind, and which pairs are close enough that they need a direct comparison.
Kettio scores are relative within the batch you submit. They are not conversion probabilities, and they are not forecasts of CPA, ROAS, or causal lift. Treat them as a prioritization signal, not a prediction.

Two surfaces

MCP server

Install into Claude Code, Codex, or Claude Desktop and rank creative straight from local files. Two commands and a key.

REST API

Batch scoring over HTTP. Use this for volume: pipelines, scheduled jobs, and anything that runs without a client attached.
Both reach the same scoring pipeline. The difference is where your files live: rank_assets over MCP takes local paths and uploads them for you, while the REST API expects assets already published at fetchable URLs. See Agent loop for choosing between them.

Endpoints

| POST /api/v1/pairwise | Run a five-voter blinded panel on explicit head-to-head matchups. | Base URL is https://kettio.com for every endpoint. Authentication is a bearer token on every request — see Authentication.

What the score means

Every asset is scored by Kettio’s SSR pipeline against a persona built from the audience you supply. Each scoring evaluation runs three independent repetitions and averages them, so a single score already carries a spread you can inspect through confidence_details. When you include copy_context, Kettio scores the full ad package and runs an image-only ablation, so the response also tells you what the copy contributed (copy_lift).

How scoring works

Repetitions, evaluations, copy lift, and the image-only ablation.

Reading confidence

When a gap is real and when two assets are effectively tied.

Start here

1

Create an API key

Open Dashboard → API Keys. The raw key is shown once.
2

Pick your path

Using a coding agent? Set up your agent — install, rank local files, done. Calling over HTTP? First ranking walks through a working request and its response.
3

Wire it into your loop

Read Limits and billing before you scale up — billing is counted in scoring evaluations, not assets.