Price a 12-script ad library: MAI-Voice-2.1, Flash and Sume TTS

Twelve ad scripts from 90 to 1,200 characters cost $0.35 on Sume, $0.1386 on MAI-Voice-2.1 and $0.0945 on Flash. The per-job rounding is where they differ.

4 min readSume
All posts

A 12-script library totalling 6,300 characters costs $0.35 on Sume, about $0.14 on MAI-Voice-2.1 and about $0.09 on MAI-Voice-2.1-Flash. Sume's rate per character is higher and it rounds each job up to a whole cent, so the gap is mostly a short-script effect.

The inputs

Microsoft's model page lists $22 per million characters for MAI-Voice-2.1 and $15 per million for the Flash variant. Sume's list rate for the Cartesia-based TTS models is 38 micro-USD per character, times 1.25, which is $0.0475 per 1,000 characters. Sume rounds each job up to the next cent, with a one-cent minimum and a 95-cent maximum at 20,000 characters.

The twelve scripts

The library has scripts of 90, 150, 210, 240, 300, 360, 450, 600, 750, 900, 1,050 and 1,200 characters. Spaces and punctuation count.

Cost per script and per library (read 2026-10-05)
CharactersSume (rounded up)MAI-Voice-2.1 at $22/MFlash at $15/M
90$0.01$0.00198$0.00135
150$0.01$0.0033$0.00225
210$0.01$0.00462$0.00315
240$0.02$0.00528$0.0036
300$0.02$0.0066$0.0045
360$0.02$0.00792$0.0054
450$0.03$0.0099$0.00675
600$0.03$0.0132$0.009
750$0.04$0.0165$0.01125
900$0.05$0.0198$0.0135
1,050$0.05$0.0231$0.01575
1,200$0.06$0.0264$0.018
Total 6,300$0.35$0.1386$0.0945

Check the arithmetic

The unrounded Sume figure for 6,300 characters would be 6,300 x $0.0475 / 1,000 = $0.29925. Per-job rounding adds about 5 cents. MAI-Voice-2.1 is 6,300 x $22 / 1,000,000 = $0.1386, and Flash is 6,300 x $15 / 1,000,000 = $0.0945.

import math
sizes = [90,150,210,240,300,360,450,600,750,900,1050,1200]
sume = sum(max(1, math.ceil(n * 38 * 1.25 / 10000 - 1e-9)) for n in sizes)
print("sume cents", sume)
print("mai", sum(sizes) * 22 / 1e6)
print("flash", sum(sizes) * 15 / 1e6)

What the numbers do not include

Microsoft's figures are the list rates from its model page; I did not find a per-request minimum there, and I did not check what a Foundry or OpenRouter invoice adds. Sume's figure is the TTS charge only. Neither number includes video, captions or a review pass. The comparison also ignores that the products differ: Sume returns a finished audio file from an async job, and Flash is a low-latency model aimed at live agents.

When rounding matters

Because Sume rounds per job, packing several short lines into one script that fits in a single job reduces the bill; a 210-character job and a 211-character job cost 1 and 2 cents. If you need separate files, the penalty is at most one cent per file.

Sources

Related posts

More in Pricing

All Pricing posts

Written by Sume