Pricing and benchmarks · 2026-10-09

Solar Pro 4 pricing: promotion, cache and standard rates

Check Solar Pro 4 promotion dates, standard USD per million token rates and a worked calculation that separates cached input from credit top-up charges.

LLMTR editorial diagram for Solar Pro 4 pricing: promotion, cache and standard rates, showing three labeled concepts in a sequence or comparison.

Solar Pro 4’s three pricing periods

Solar Pro 4’s launch promotion charged $0.03 for input, $0.006 for cache reads and $0.12 for output per million tokens through September 10, 2026, 23:59 UTC. A second discount period follows: from September 11 through October 10, 2026, 23:59 UTC, input is $0.09, cache reads $0.018 and output $0.36. A third discount period starts on October 11, 2026: input $0.15, cache reads $0.03 and output $0.60. Upstage has not announced when it ends; standard rates apply from whatever date Upstage publishes.

When this article was published on August 28, Upstage’s pricing page showed standard rates from September 11. The second discount period was added later, and this article was updated on September 22. Upstage then put a third discount period after October 11 instead of standard rates, so this article was updated again on October 9. The LLMTR catalog changes periods at 2026-09-11T00:00:00.000Z and 2026-10-11T00:00:00.000Z, or 03:00 in Turkey on September 11 and October 11. The table separates the three windows and the standard rates.

USD/1M tokens. 90% off: before 2026-09-11T00:00Z; 70% off: from 2026-09-11T00:00Z to 2026-10-11T00:00Z; 50% off: from 2026-10-11T00:00Z, end date not announced; standard: start date not announced.
Item90% off (USD/1M tokens)70% off (USD/1M tokens)50% off (USD/1M tokens)Standard (USD/1M tokens)
Uncached input0.030.090.150.30
Cache reads0.0060.0180.030.06
Output0.120.360.601.20

Cached tokens are part of total input

Let P be total input tokens, C the cached portion and O total output tokens. Apply the regular input rate to P − C. Charging all of P before adding C would count cached tokens twice.

Cost = ((P − C) × input rate + C × cache rate + O × output rate) / 1,000,000. Only tokens reported as cache reads receive that discount. Repeating text does not make every token in every request cheaper.

Keeping repeated instructions and shared documents at the prompt’s beginning is a useful design choice. Nevertheless, measure cache hits from usage counters rather than guaranteeing them in your budget.

A worked example with 100,000 input tokens

Suppose a task uses 100,000 input tokens: 80,000 cache reads and 20,000 uncached tokens, plus 5,000 total output tokens. These are illustrative assumptions, not a live measurement or invoice.

At the launch promotion the cost is 0.02 × 0.03 + 0.08 × 0.006 + 0.005 × 0.12 = $0.00168. The same distribution costs $0.00504 in the second discount period, $0.0084 in the third and $0.0168 at standard rates. At unchanged volumes, 10,000 such tasks consume $16.80, $50.40, $84 or $168 of model usage, respectively.

Without cache hits, those input and output volumes cost $0.018 in the third discount period and $0.036 at standard rates. Include this scenario to expose the difference when an expected discount does not materialize.

Illustrative costs for one task; the last four columns are USD amounts.
ItemTokens90% off cost (USD)70% off cost (USD)50% off cost (USD)Standard cost (USD)
Uncached input20,0000.000600.00180.00300.0060
Cache reads80,0000.000480.001440.00240.0048
Total output5,0000.000600.00180.00300.0060
Total105,0000.001680.005040.00840.0168

Include reasoning and retries in the budget

LLMTR’s August 11, 2026 Upstage record includes reasoning tokens in completion_tokens at the output rate. Do not add reasoning_tokens again when using that total. A short visible answer alone does not reveal total output consumption.

Upstage’s announcement describes the reasoning default differently from LLMTR’s measurement on that date. This article does not perform a new live test; the example explicitly selects none for reasoning_effort instead of relying on a default.

Include every model turn and retry when budgeting a task. When comparing effort settings, consider completed tasks and required human review as well as token charges.

Inspect usage without recording content

LLMTR’s record reads the cache counter from prompt_tokens_details.cached_tokens. The Python example shows usage counters without logging the prompt or model answer. A missing counter appears as null; do not interpret that as verified zero consumption.

Set LLMTR_BASE_URL to the complete API root, including /v1; the example appends no second /v1. LLMTR_API_KEY comes from the environment. Do not mix this LLMTR request with direct Upstage credentials or model identifiers. This example was not executed; running it can create billable usage.

LLMTR example that prints token counters only.

import json
import os
from urllib.request import Request, urlopen

payload = {
    "model": "upstage/solar-pro4",
    "messages": [{"role": "user", "content": "Summarize: A cache reuses previous work."}],
    "reasoning_effort": "none",
    "max_tokens": 256,
}
request = Request(
    os.environ["LLMTR_BASE_URL"].rstrip("/") + "/chat/completions",
    data=json.dumps(payload).encode("utf-8"),
    headers={
        "Authorization": "Bearer " + os.environ["LLMTR_API_KEY"],
        "Content-Type": "application/json",
    },
)
with urlopen(request, timeout=60) as response:
    result = json.load(response)

usage = result.get("usage")
if not isinstance(usage, dict):
    raise RuntimeError("Usage missing; do not estimate billing.")
prompt_details = usage.get("prompt_tokens_details") or {}
completion_details = usage.get("completion_tokens_details") or {}
print(json.dumps({
    "prompt_tokens": usage.get("prompt_tokens"),
    "cached_tokens": prompt_details.get("cached_tokens"),
    "completion_tokens": usage.get("completion_tokens"),
    "reasoning_tokens": completion_details.get("reasoning_tokens"),
}))

Separate credit top-up margin from model usage

LLMTR applies its 8% platform margin when adding credit, not to the table’s model token rates. For $10 of credit, the margin calculation is $0.80. Account for model consumption separately from purchasing credit. These examples exclude taxes and currency conversion.

Split the budget by pricing period. Budget usage after October 11 at the third discount period, but because its end date is not announced, also keep a standard-rate scenario and a no-cache scenario when hit rates are uncertain. Sum consumption before rounding tiny request amounts, then reconcile payments and invoices against the relevant usage records.

Frequently asked questions

Does the Solar Pro 4 promotion mean free usage?

No. It is a temporary price discount. Uncached input, cache reads and output remain separate paid items; the promotion is not a promise of free or unlimited usage.

Does caching discount every request?

No guarantee applies. Check costs against reported cache-read tokens rather than the number of repeated requests. If the counter is missing, the hit rate is not verified.

Does buying credit early preserve promotional pricing?

Adding credit does not change the model’s dated pricing windows. Budget future usage at the rate applicable to that period instead of extending promotional assumptions into the standard period.

Related posts