Edits teleprompter script: check the recorded pace with video inspect
Instagram Edits has a teleprompter. After recording, Sume video inspect returns a transcript at $0.01 per audio minute, so you can compute words per minute.

If you read a script off the Edits teleprompter, you can check how fast you actually spoke by transcribing the finished take and dividing the word count by the clip's length. Sume's video inspect returns a transcript with transcribe: true, billed at $0.01 per audio minute, and a transcript's text is enough to count words. Instagram's Edits page lists a teleprompter among its features (read 2026-10-03); I could not retrieve a page that describes its speed setting, so this post does not claim one.
Why check pace after recording
A teleprompter makes reading easy and pacing hard to judge. Readers drift fast under pressure, and a script that looked like 45 seconds on paper can run 35. Words per minute is a blunt measure, but it catches the two common faults: a take so rushed that captions cannot keep up, and a take so slow that the hook loses people. Pick your own target from your best past Reel, not from a rule of thumb, since the right pace depends on the audience and the language.
Count words from the transcript
Pass the known length in duration_seconds as a hint (the docs allow up to 600 seconds; omit it and one minute is reserved). Keep frames: false so you pay only for the transcript. The script below reads your length from an environment variable, counts words and prints the rate against your script's planned word count.
import json, os, urllib.request
API = "https://api.sume.com/v1"
def post(path, body, key):
req = urllib.request.Request(
f"{API}{path}",
data=json.dumps(body).encode(),
headers={
"Authorization": f"Bearer {os.environ['SUME_API_KEY']}",
"Content-Type": "application/json",
"Idempotency-Key": key,
},
method="POST",
)
with urllib.request.urlopen(req) as res:
return json.load(res)
seconds = float(os.environ["SUME_CLIP_SECONDS"])
res = post(
"/video-inspect",
{
"video_url": os.environ["SUME_CLIP_URL"],
"frames": False,
"transcribe": True,
"language_code": "en",
"duration_seconds": int(seconds),
},
"teleprompter-pace-v1",
)
inspect = res.get("video_inspect", res)
text = (inspect.get("transcript") or {}).get("text", "")
words = len(text.split())
print(words, "words in", seconds, "seconds")
print(round(words / (seconds / 60)), "words per minute")
Reading the number
Compare the spoken count with the planned one first. A big gap means you skipped or added lines, and that matters more than the rate. Transcripts can drop filler words and mishear names, so a few words of difference is noise.
If the rate is above your target, re-record the section or trim the pauses; if it is below, tighten the script. For the second case, cutting is cheaper than re-recording: video trim is $0.02 per cut and returns a new MP4. A short transcript also helps captions: the same text can feed the script_text option in video captions, which aligns burned-in wording to your script.
The first run is the one to inspect by hand. Read the transcript beside the video once, so you know whether the transcript is accurate enough to trust for later takes. This takes a minute and tells you more than any number it produces.
| Input | Source |
|---|---|
| Planned words | Your script |
| Spoken words | Transcript text from video inspect |
| Seconds | Clip length you pass as the hint |
| Rate | Words divided by minutes, computed in your code |
Feed the check back into the next script
Pace numbers are most useful across several takes. Keep a short log with the date, the planned words, the spoken words, the seconds and the rate. After five Reels you will see your own typical rate and how much it moves from take to take, and you can size the next script before you write it: target seconds multiplied by your usual words per minute, divided by 60.
That planning number also answers whether a long idea fits one Reel. If your usual rate is steady and the script you want needs more words than the length allows, the answer is two Reels or a cut, decided before you record rather than after.
Keep the check proportionate. It is a cent or two of transcription for a measurement that catches a rushed take, and nothing in it requires you to change how you talk. If your delivery sounds right to you, the transcript is a second opinion, and you can ignore it.
Sources
Related posts
More in Use cases
- eMAG main product image standard and what to ask Sume for
eMAG Marketplace's main-image standard (whole product, centred, about 85% of the image, white or grey background) and the Sume request that fits.
- Reel end card: trim the last 3 s, then overlay a still
Sume timeline-compose holds a still for the whole clip, so an end card on the last 3 seconds needs a trim first. Trim, compose, then join in Timeline.
- Open episode 2 on episode 1's last frame: video_frames, frame_images
Pull the closing still with POST /v1/video-frames, then send it as first_frame to POST /v1/videos so the next episode starts where the last cut ended.
- Estimated tax reminder videos for freelancers: an accounting firm plan
The IRS says sole proprietors and others generally pay estimated tax if they expect to owe $1,000. Plan short avatar clips that send clients to the IRS page.
Written by Sume