Free voice-to-post tool for X

Speak it. Post it.

Press the mic, say what's on your mind, and CallTweet turns it into a post that fits X's 280 characters. Run long and it splits your words into a numbered thread at the sentence breaks. Nothing to install, no account, and nothing you say is stored.

Press the mic and start talking.

Characters used: 0 / 280

Ready to post

Your post will show up here as you talk or type.

    Three steps, about a minute

    1. Talk

      Press the big button and speak the way you'd leave a voice note. The first time, your browser asks for microphone access. Grey text shows what it's hearing; black text is final.

    2. Fix it up

      The text box is a normal editor. Correct a misheard name, cut a sentence, add an emoji. The counter and the posts below update as you type.

    3. Post it

      Press Post on X to open X's composer with your text in it, then publish from your own account. For a thread, copy the remaining posts in order.

    Say the punctuation

    Most speech engines guess at commas and question marks, and they guess wrong often enough to be annoying. With spoken punctuation on, you can say the mark you want and CallTweet drops it in, fixing the spaces around it.

    Want to decide where a thread breaks? Say "next post". That puts a line with three dashes in your text, and the splitter always starts a new post there. You can type --- on its own line to do the same.

    Saying the word "period" in a sentence, as in "a trial period", will also turn into a dot. If that gets in your way, switch spoken punctuation off.

    Spoken words and what they insert
    SayYou get
    comma,
    period / full stop.
    question mark?
    exclamation mark / point!
    colon / semicolon: ;
    dot dot dot…
    new line / new paragraphline break / blank line
    hashtag coffee#coffee
    next postforces a thread break

    Counted the way X counts

    280

    The limit for a standard post. Accounts with a paid subscription can post longer, but most readers only see the first 280 before a "Show more" link, so a thread still reads better.

    23

    What every link costs. X wraps URLs in its t.co shortener, so a long address and a short one both count as 23 characters.

    2

    What an emoji or a Chinese, Japanese or Korean character costs. Most Latin letters, numbers and punctuation count as 1.

    The thread splitter keeps whole sentences together and only breaks inside one when a single sentence runs past the limit. With numbering on, it saves room for the " 1/3" label so every post still fits.

    Your voice isn't kept, anywhere we control

    The tool runs on your device. The site sets no cookies and runs no analytics, and your draft is saved in your own browser so a reload doesn't lose it.

    In Chrome, Edge and Safari the browser turns speech into text itself, using Google's, Microsoft's or Apple's speech service. In browsers where that doesn't work, such as Firefox or Brave, CallTweet sends the clip to its own speech service on Cloudflare, gets the text back and throws the audio away. The privacy page spells out what happens in each case.

    Questions people ask

    Is CallTweet free?

    Yes. There is no account, no sign-up and no paid tier. The cloud speech service used by some browsers has a fair-use daily limit so it can stay free.

    Which browsers support the mic button?

    All of them. Chrome, Edge and Safari use their own built-in speech recognition. In Firefox, Brave, Opera and other browsers, CallTweet uses its own speech service: press the mic, talk for up to a minute and press it again.

    Do you store or hear what I say?

    No. In Chrome, Edge and Safari your browser turns speech into text using Google's, Microsoft's or Apple's service, and CallTweet only sees the words. In other browsers our own service on Cloudflare transcribes the clip and discards the audio. We don't store your audio or your words.

    Can it post to X for me?

    No, and that is on purpose. The Post on X button opens X's own composer with your text filled in. You check it and press Post yourself while logged in to your account. CallTweet never touches your X login.

    Why can only the first post of a thread open on X?

    X's share link fills in a single post. Open post 1 with the button and publish it, then reply to it with post 2, 3 and so on using the copy buttons. In the X app you can also paste each one into the composer with the plus button before posting.

    How are links counted?

    X shortens every link with its t.co service, so each URL counts as 23 characters no matter how long it is. The counter here does the same, and it counts emoji and characters like Chinese or Japanese as 2, as X does.

    Does it work in other languages?

    The mic understands every language in the list, and the counter and thread splitter work with any text. The spoken punctuation words (comma, period, new line and so on) are English only, so the option switches off for other languages.

    From the blog