Ad copy character counter for every ad platform.
write against the real character limits before you paste anything into an ads manager and find out the headline is four characters too long. pick a platform, fill the fields, and every meter updates as you type. it runs in your browser and nothing is uploaded.
responsive search ad. Google assembles headlines and descriptions into combinations, so every one has to make sense on its own.
facebook and instagram feed placements. the numbers below are where the text gets cut visually, not where the box stops accepting input.
single image sponsored content, the format most B2B campaigns run.
in-feed ad. the text sits over the video, competing with the caption area and the interface.
promoted post. the limit is the post limit, and it is a real wall rather than a truncation point.
this checker needs javascript. the limits and the explanation below read fine without it.
The limit is not where your copy gets cut
a character limit and a truncation point are two different things, and mixing them up is why ads that pass validation still read as half-finished. Meta will accept far more than 125 characters of primary text. 125 is roughly where the feed drops in a see more link and hides the rest behind a tap. the copy is not rejected, it is just no longer read.
LinkedIn behaves the same way with intro text, and TikTok cuts its ad text over the video before you get near 100 characters on a small phone. so the number in each meter is doing one of two jobs depending on the field: on a post on X it is a wall the platform enforces, and on Meta or LinkedIn it is the point where a human stops seeing your sentence. both are worth writing to, for different reasons.
these numbers also move. platforms change field limits, add placements with tighter crops and quietly retire formats, so treat what is here as the working number and the ads manager preview as the final word. preview on mobile specifically, because that is where almost all of the impressions are and where the cut is earliest.
Write to the limit, do not trim to it
the common workflow is to draft in a doc, paste, discover you are over, and cut. that final cut is made under time pressure inside a small text box, and it almost always takes out the specific bit: the number, the noun, the thing that made the line different. what survives is the generic half, because generic words are shorter and they never look wrong.
writing inside the limit from the first line changes what you produce, not just how long it takes. thirty characters forces one idea per headline, which is what a good headline is anyway. the constraint stops being an annoyance and starts doing the editing for you, which is the entire argument for a counter that runs while you type rather than a validator that runs when you submit.
the same applies to the small fields nobody drafts properly. display paths and link descriptions get typed straight into the ads manager at the end, so they end up as leftovers like /home or a truncated fragment. they are visible ad real estate. give them the same thirty seconds you gave the headline.
Fifteen headlines means fifteen different ideas
a responsive search ad takes up to 15 headlines and 4 descriptions, and Google assembles them into combinations at auction time. that only works if the assets are genuinely different. fifteen rewordings of the same claim give the system fifteen versions of one idea, and it has nothing to choose between, so you learn nothing and the account gets no better.
the useful spread is by angle: one on the offer, one on the objection, one on the outcome, one on who it is for, one with the number, one with the brand name so it can pair with anything. write each so it reads as a complete thought, because it can appear next to any of the others and there is no fixed order unless you pin one.
this is the same discipline paid social rewards. testing 150 or more creatives a month only teaches you something if the variants change the idea rather than the wording, and the ones that move cost per acquisition are almost never the ones where a synonym got swapped. when the copy is drafted, tag the links with the UTM builder so you can still tell which angle did the work.
Fitting the box is the floor. Being worth reading is the work.
if the copy fits, the ads are live and the cost per acquisition still will not move, that is a different problem. bring one account to the breakdown call.
Common questions
What is the character limit for a Google Ads headline?
30 characters per headline, and a responsive search ad takes up to 15 of them. descriptions are 90 characters each, up to 4. display paths are 15 characters each, and the business name is 25. Google needs at least 3 headlines and 2 descriptions before the ad will run.
Does Meta cut off primary text at 125 characters?
not exactly. the box accepts a lot more than 125, but on most feed placements that is roughly where the "see more" link appears and the rest gets hidden. so it behaves like a limit for anyone who does not tap. write the hook and the offer above it and treat the rest as optional.
How do emoji count towards the limit?
unpredictably, which is why this tool does not pretend to solve it. the counter reports the same string length your browser does, so a plain emoji usually counts as 2 and a flag or a skin tone variant can count as 4 or more. platforms each count them their own way. if you use emoji, leave slack and check the real preview.
Why does it warn me about words in capitals?
because ad platforms restrict excessive capitalisation, and Google is the strictest about it. an acronym is fine. a whole word shouted for emphasis is what gets an ad disapproved, and even when it passes it reads like a discount banner rather than a product. the same goes for stacking exclamation marks.
Does it count spaces and punctuation?
yes, both, and that is how the platforms count too. leading and trailing spaces are trimmed off before counting, since the ads manager strips those anyway. the double space warning exists because a stray one survives a copy and paste and shows up in the live ad.
Is my ad copy sent anywhere?
no. every count and every warning is calculated in your browser with javascript. nothing is uploaded, nothing is stored and there is no account or email box. you can disconnect from the internet after the page loads and it still works, which also means nothing survives closing the tab, so keep the real draft somewhere else.