280 isn't 280 characters.
It's 28,000 weight units.
X counts with the rules in its open-source twitter-text library (config v3). Latin letters weigh 1, Chinese, Japanese and Korean weigh 2, every emoji counts as 2 however many code points it has, and any link costs 23 because it becomes a t.co address. Type below; each chip is one counted unit.
Add up to four photos (or use the generated ones). Each layout below is drawn from your pixels with the tile shapes X's timeline uses, centre-cropped. The percentage under each layout is how much of each photo nobody sees until they tap; a single photo keeps its own shape, shown here in a fixed-height frame. Tile shapes are observed in the web timeline, not published by X.