Every field where you paste marketing copy has a ceiling, and the ceiling is not the same in two places. A headline for a Google search ad stops at one number, an app subtitle at another, a keyword list at a third that is not even measured in characters. Go over, and the console either refuses the text or cuts it, and a cut line seldom stops at a convenient place. This guide collects the limits that the platforms publish on their own help pages, explains the few places where the counting rule is not "one letter, one unit", and describes how to shorten a long text so that it still says what it was written to say.

The numbers, each from the platform that sets it

Limits change, so every figure below is linked to the page that states it, and the pages were read on 30 October 2026. Check the page again before a launch.

Google Ads, responsive search ads. The help page gives 30 characters for each headline and 90 for each description, with 15 characters for each of the two display path fields. An ad takes between 3 and 15 headlines and between 2 and 4 descriptions (Google Ads Help). The ad system mixes and matches the pieces, so each headline has to make sense next to any other one.

App Store product page. The app name needs at least 2 and at most 30 characters, and the subtitle may not be longer than 30 (App Store Connect, app information). Promotional text is capped at 170 characters, the description and the "what's new" text at 4000 each, and the keyword field is capped at 100 bytes (App Store Connect, platform version information).

Google Play listing. The app name takes 30 characters, the short description 80 and the full description 4,000 (Play Console Help).

X. A post may hold 280 characters, but the counter works with weights, which the next section explains (X developer documentation).

Two networks that people often ask about are missing from this list on purpose. LinkedIn and Instagram each have a figure that circulates widely, yet the figures we found came from blogs and tool vendors, and neither network's own help pages stated them in a form we could cite here. A limit with no primary source stays out of a post that exists to give limits.

How characters are counted

For most fields a character is a character. Four rules are different, and each one can make a line that "looks short enough" fail.

  1. Wide characters can count twice. Google's page says that in languages with double-width script, namely Korean, Japanese and Chinese, each character is worth 2 (Google Ads Help). A Japanese headline of 20 characters therefore uses 40 units of a 30-unit field, so it does not fit. Google Play takes the opposite approach: the listed maximums are the same for wide and narrow characters, and the type of character makes no difference (Play Console Help). The same Japanese line could pass in a store listing and fail in an ad. Bulgarian and other Cyrillic text is not double-width, so in these fields a Cyrillic letter takes one unit, like a Latin letter.
  2. Emoji weigh 2 on X. The documentation says an emoji counts as 2 characters no matter how it is built, and that Chinese, Japanese and Korean characters also carry a weight of 2 (X developer documentation). A post of 140 such characters is already full.
  3. A link has a fixed length on X. Any valid link is counted as 23, however long or short the address is (X developer documentation). A short link is no cheaper than a long one, and a long address is not penalised.
  4. The App Store keyword field counts bytes. The field takes up to 100 bytes of content (App Store Connect). In UTF-8 a character in the first 128 code points takes one byte, and the next block of code points takes two (RFC 3629). Accented Latin letters and, as common knowledge of the Unicode layout rather than something the pages above state, the Cyrillic alphabet fall into that second block. A keyword list written in Bulgarian therefore holds roughly half as many letters as an English one, and the separating commas use up bytes too. Counting letters instead of bytes is the mistake that makes a list look fine and then get truncated.

A practical consequence follows from these rules. A counter that returns the length of a string in the editor you use will be right for a Google Play description and wrong for an X post that holds a link, an ad written in Japanese and a Bulgarian keyword list. Measure with the platform's own rule, and write the count next to the limit.

Why a cut line loses the point

When text is longer than the field, either the console truncates it or the platform's display does. Truncation takes the end, and the end is where writers put the offer, the condition or the action. A subtitle that reads as a benefit followed by a qualification turns into a benefit without its qualification: for a price, a trial period or a region, that is a wrong promise, not a shorter one.

Cutting by hand has its own trap. People remove words until the counter turns green and stop, so the order of what survives is decided by what was easiest to delete. A better order is the reverse:

  • Decide which one fact the field must carry: the product, the number, the condition. Everything else is optional.
  • Drop padding and doubled words before anything else; only then give up whole side details, weakest first.
  • Keep each price, name and condition from the original untouched; alter only the words around them.
  • Count again by the platform's own rule after each edit, since an edit that swaps a word for an emoji or a link can raise the weight.

Adding words during the cut is also a risk. A shorter line that quietly gains a stronger adjective, or a claim the long version did not make, is not a shortened line but a new one, and in an ad it is one that somebody may later need to defend.

A swipeable carousel on a social network is another way of cutting a text to fit: the limit is attention rather than a counter. Three habits keep it honest.

One idea per slide. Two points on one slide are two slides that were squeezed together, and the reader remembers neither. Begin by writing down each distinct point the source makes, drop the weakest when points outnumber slides, and never let one point run onto the next slide.

A short headline and a short body. The headline names the point in a handful of words; the body adds the detail it needs and nothing more. The first slide is a hook that states the most striking fact the text actually supports, and it makes no request of the reader.

No new facts on the last slide. The closing slide is a call to action and carries only that. This is where invented content tends to appear, because the writer feels a need to end on something fresh: a promised link, a discount, a date. If the source did not mention it, the slide must not either. Numbers, names and quotes travel across untouched, never rounded.

A check that can fail: lay the finished slides beside the original and check one number or name at a time. Any figure that exists on a slide but not in the source is an addition, and any slide whose idea also appears on another slide is a repeat. For a method that applies the same discipline to model-written summaries, see our note on a model that adds its own sums when it summarizes a table.

When this does not apply

The numbers here are the ones the platforms printed on the pages we read on 30 October 2026; any of them may have changed since, and a console can enforce a slightly different rule than its help page describes. Ad systems also apply editorial rules about capital letters, punctuation and claims that a character counter cannot see, and none of those are covered here. We did not test the counting rules ourselves by pasting text into each console, and the Cyrillic byte statement rests on the UTF-8 table plus general knowledge of where the alphabet sits in Unicode, not on a platform page. LinkedIn, Instagram, TikTok and other networks were left out because no primary source was found, not because they have no limits. Copy in a language with combining marks or unusual emoji sequences may be counted differently from the cases described.

Two tools for the two jobs

The platform-text-limits skill receives copy grouped by the field names of a single platform, measures each field with that platform's own rule (wide script in Google Ads, bytes in the App Store keyword box, the flat link length and the emoji weight on X) and answers with one line per overrun: the measured size, the ceiling, and a trimmed version that fits. A field that fits gets no line. The carousel-slides-from-text skill turns an article, a post or meeting notes into the words for each slide, returned as strict JSON, with a headline and a short body for every slide, a hook at the start, a call to action at the end, a single point per slide, and figures, names and quotations carried over exactly with nothing the source does not claim.

Read this post as Markdown: /blog/social-copy-character-limits.md · Atom feed.