{
  "source": "System1 Models production API (https://api.system1models.ai/v1/systemone), S1-Region: eu, internal test account",
  "measured": "2026-10-06T14:31Z",
  "method": "Synthetic state of random 5-digit numbers sized to land just below and just above the limit; input_tokens read from the response usage field. Rejected requests were checked in the billing ledger (reservation released, no charge).",
  "limits": {
    "s1-fast": {
      "max_input_tokens": 4096,
      "over_limit": "HTTP 400 invalid_request, not truncated, not billed"
    },
    "s1-pro": {
      "max_input_tokens": 4096,
      "scope": "all questions of the request together",
      "over_limit": "HTTP 400 invalid_request, not truncated, not billed"
    },
    "s1-vision": {
      "max_input_tokens": 4096,
      "scope": "text plus image tokens",
      "over_limit": "HTTP 400 invalid_request, not truncated, not billed",
      "note": "Edge not pinned by test (4,010 accepted, about 4,211 rejected); the 4,096 bound comes from the engine source, which counts text and image tokens together."
    },
    "s1-llm-auto-router": {
      "reads_max_tokens": 512,
      "context_chars_read": 600,
      "over_limit": "accepted; tokens after 512 are ignored and not billed",
      "detail": "context is cut to its first 600 characters; the request is truncated so context plus request is at most 512 tokens"
    }
  },
  "observations": [
    {
      "model": "s1-fast",
      "input_tokens": 4011,
      "http": 200
    },
    {
      "model": "s1-fast",
      "input_tokens": 4095,
      "http": 200
    },
    {
      "model": "s1-fast",
      "http": 400,
      "code": "invalid_request",
      "note": "state 2 characters longer than the accepted 4,094/4,095-token request; token count not reported because rejected requests return no usage"
    },
    {
      "model": "s1-fast",
      "approx_input_tokens": 4211,
      "http": 400,
      "code": "invalid_request",
      "note": "token count estimated from characters (about 1.03 tokens per character for this filler); rejected requests return no usage"
    },
    {
      "model": "s1-pro",
      "input_tokens": 4010,
      "http": 200
    },
    {
      "model": "s1-pro",
      "input_tokens": 4094,
      "http": 200
    },
    {
      "model": "s1-pro",
      "http": 400,
      "code": "invalid_request",
      "note": "state 2 characters longer than the accepted 4,094/4,095-token request; token count not reported because rejected requests return no usage"
    },
    {
      "model": "s1-pro",
      "approx_input_tokens": 4211,
      "http": 400,
      "code": "invalid_request",
      "note": "token count estimated from characters (about 1.03 tokens per character for this filler); rejected requests return no usage"
    },
    {
      "model": "s1-vision",
      "input_tokens": 4010,
      "http": 200,
      "note": "text only"
    },
    {
      "model": "s1-vision",
      "approx_input_tokens": 4211,
      "http": 400,
      "code": "invalid_request",
      "note": "token count estimated from characters (about 1.03 tokens per character for this filler); rejected requests return no usage"
    },
    {
      "model": "s1-vision",
      "input_tokens": 363,
      "http": 200,
      "note": "64x64 PNG plus a short question"
    },
    {
      "model": "s1-llm-auto-router",
      "state_bytes": 344,
      "input_tokens": 307,
      "http": 200
    },
    {
      "model": "s1-llm-auto-router",
      "state_bytes": 1045,
      "input_tokens": 512,
      "http": 200
    },
    {
      "model": "s1-llm-auto-router",
      "state_bytes": 15044,
      "input_tokens": 512,
      "http": 200
    }
  ],
  "other_bounds": {
    "serialized_state_max_bytes": 16384,
    "request_body_max_bytes": 6291456,
    "image": "s1-vision only, one image, at most 4 MiB decoded and 2,000,000 pixels"
  }
}
