Cross-posting

How to cross-post from X (Twitter) to Bluesky

Auf dem Papier ist X zu Bluesky ein Upgrade von 280 auf 300. In der Praxis zählen die beiden Netzwerke unterschiedlich genug, dass derselbe Entwurf das eine Limit besteht und am anderen scheitert: X zählt Zeichen und berechnet jeden Link pauschal mit 23, während Bluesky 300 Grapheme zählt — Emoji zählen einmal, aber eine URL kostet ihre volle Länge. Dazu kommen Domain-basierte Handles, ein Bildlimit nahe 1 MB und eine Kultur, in der Alt-Text erwartet statt optional ist — und so zeigt die freundlichste Migration im Text-Cluster am Ende echte Kanten.

Dieser Guide bildet die Zählmathematik ab, die Link- und Handle-Fallen sowie den manuellen Workflow im Vergleich zu SocialKit für die Veröffentlichung auf beiden.

Start My Free Trial

€0.00 due today · cancel anytime · 7-day money-back guarantee

X (Twitter) vs Bluesky: the spec deltas

Everything that changes between the two composers, side by side.

X (Twitter)Bluesky spec mapping. Limits last verified June 2026; platforms change these quietly, so check the composer when in doubt.
SpecX (Twitter) (from)Bluesky (to)
Primary canvas1600 × 900 px · 16:9 (post image)1200 × 675 px · 16:9 (post image)
Caption limit280 characters (X Premium subscribers can post up to 25,000)300 graphemes (visual characters — emoji count once)
Video lengthAbout 2 minutes 20 seconds for standard accounts; longer uploads are a Premium featureShort clips — Bluesky has been raising limits (around 3 minutes as of early 2026)
HashtagsCount toward the character limit; one or two is the platform normPlain-text hashtags count toward the 300-grapheme limit
ZählmodellZeichen — URLs pauschal 23, die meisten Emoji zählen doppelt300 Grapheme — Emoji zählen einmal, URLs in voller Länge
Bild-DateilimitFotos bis 5 MBEtwa 1 MB (976.56 KB) — größere Dateien werden auto-komprimiert
Handles@username-HandlesDomain-Handles — name.bsky.social oder deine eigene Domain

The good news

What transfers cleanly

  • Reiner Text: gewöhnliche Sätze zählen auf beiden gleich, daher passt ein X-Post mit 280 Zeichen in Blueskys 300 Grapheme mit etwa 20 Reserve.
  • Emoji-lastige Posts werden günstiger: X zählt die meisten Emoji als zwei Zeichen, Bluesky jedes als ein Graphem — ein Entwurf, der auf X knapp am Limit kratzte, gewinnt echten Spielraum.
  • Bilder: bis zu vier pro Post auf beiden, und eine Grafik mit 1200 × 675 px (16:9) ist auf jedem ein sauberer Standard; Alt-Text wird übernommen (X erlaubt davon bis zu 1.000 Zeichen).
  • Antwort-Threads: Selbstantwort-Ketten sind auf beiden Netzwerken natives Verhalten — und da Bluesky keine Long-Post-Stufe hat, ist die Kette sein Langformat.
  • Kurze Clips: X hält Standard-Accounts bei etwa 2 Minuten 20 Sekunden, was in Blueskys Video-Limit passt — Anfang 2026 rund 3 Minuten, und Bluesky hat die Limits stetig angehoben.

The fine print

What breaks in transit

  • Link-Mathematik: eine URL mit 90 Zeichen kostet auf X 23 Zeichen und auf Bluesky 90 Grapheme — fast ein Drittel des Budgets. Die Bluesky-native Lösung ist eine Link-Card: Card anhängen, dann die rohe URL aus dem Text löschen.
  • Eingefügte t.co-Links: wenn du deinen Live-X-Post kopierst, kopierst du X’ verpackte Redirect-URLs. Baue jeden Link aus dem Original neu auf, bevor er Bluesky berührt.
  • @Mentions: Bluesky-Handles sind Domains — deinname.bsky.social oder deine eigene Domain — daher übersteht keine X-Mention die Reise; jeder Account muss neu gefunden werden.
  • X-Premium-Long-Posts: auf Bluesky gibt es keine Stufe mit 25.000 Zeichen, weder kostenpflichtig noch sonst; alles jenseits von 300 Graphemen wird ein Thread.
  • Schwere Bilder: X akzeptiert Fotos bis 5 MB; Bluesky komprimiert alles über etwa 1 MB (976.56 KB, das Blob-Limit des AT-Protokolls) — okay für Fotos, hart bei feintextigen Screenshots, die du nicht bewusst exportiert hast.
  • Annahmen zur Discovery: Bluesky hat keinen einzelnen algorithmischen For-You-Feed, dem man hinterherjagt — Hashtags funktionieren, zählen aber auf die 300, und Reichweite fließt stattdessen über Custom Feeds, Suche und Reposts.

Step by step: by hand vs with SocialKit

The manual way

  1. Kopiere aus deinem Entwurf, nicht aus dem Live-Post, damit Links unverpackt ankommen.
  2. Prüfe die Zählung erneut gegen 300 Grapheme und denk daran, dass jede rohe URL in voller Länge zählt.
  3. Wandle den Link in eine Card um: füge die URL ein, lass den Composer die Vorschau anhängen, dann lösche den URL-Text, um die Grapheme zurückzugewinnen.
  4. Finde jeden erwähnten Account über sein Bluesky-Handle neu — Domains, keine Benutzernamen.
  5. Exportiere Bilder unter 1 MB selbst neu (skalieren, dann JPEG oder WebP), statt den Client komprimieren zu lassen, und schreibe für jedes Alt-Text.
  6. Poste oder plane zu Blueskys eigenen aktiven Stunden, statt dein X-Timing zu spiegeln.

With SocialKit — compose once, customize per network

  1. Verfasse einmal und wähle X und Bluesky — plus Threads oder Mastodon, falls du über den gesamten Text-Stack veröffentlichst.
  2. Passe pro Netzwerk an mit Live-Zählern auf einem Screen: trimme die X-Variante gegen 280 und die Bluesky-Variante gegen 300, statt über zwei Tabs hinweg Zeichen-Golf zu spielen.
  3. Plane jedes Netzwerk in seinen eigenen Slot und lass SocialKit automatisch veröffentlichen.
  4. Lies die Zahlen pro Netzwerk in SocialKits Analytics — X- und Bluesky-Publikum belohnen merklich unterschiedliche Posts, und die Daten zeigen für deine, was wohin gehört.
Start My Free Trial

€0.00 due today · cancel anytime · 7-day money-back guarantee

Pro tips

Tip 1

Entwirf Link-Posts überall im Bluesky-Stil: Headline-Text plus angehängte Card, keine rohe URL im Copy. Das liest sich auch auf X sauberer, und der Entwurf wird portabel.

Tip 2

Setze eine eigene Domain als dein Bluesky-Handle (deinemarke.com) — sie dient zugleich als Blueskys native Form der Verifizierung und macht dein Mention-Ziel eindeutig.

Tip 3

Behandle Alt-Text als Distributionsarbeit, nicht nur als Barrierefreiheit: viele Bluesky-Nutzer reposten Bilder ohne ihn nicht, daher reisen die zwei ehrlichen Sätze, die du schreibst, weiter als jeder Tag.

FAQ

X (Twitter) → Bluesky questions

Start My Free Trial

€0.00 due today · cancel anytime · 7-day money-back guarantee

Ist Blueskys 300er-Limit wirklich größer als X’ 280?

Für reinen Text ja — etwa 20 Zeichen größer. Für Posts mit Links kann es effektiv kleiner sein, weil X pauschal 23 Zeichen pro URL berechnet, während Bluesky den vollen Linktext gegen die 300 Grapheme zählt. Bei Emoji kippt es andersherum: die meisten zählen auf X als zwei Zeichen und auf Bluesky als ein Graphem.

Wie teile ich Links auf Bluesky, ohne ein Drittel des Limits zu verlieren?

Nutze eine Link-Card: füge die URL ein, lass den Composer die Card-Vorschau anhängen, dann lösche den URL-Text aus dem Post. Die Card behält Vorschau und Klick, und die Grapheme kommen zurück. Verwende nie den t.co-Link aus deinem X-Post erneut — baue die echte URL neu auf.

Was passiert mit X-Premium-Long-Posts auf Bluesky?

Sie passen nicht — Bluesky hat keine Long-Post-Stufe. Teile lange Inhalte in einen Selbstantwort-Thread auf, bei dem der erste Post die Werbung macht, oder veröffentliche das Stück anderswo und teile es mit einer Link-Card.

Warum sehen meine Screenshots auf Bluesky schlechter aus als auf X?

Dateigröße. X akzeptiert Bilder bis 5 MB; Blueskys Protokoll deckelt Bild-Blobs nahe 1 MB (976.56 KB) und komprimiert alles Größere automatisch. Exportiere bewusst — 2.000 px oder weniger an der langen Seite, als JPEG oder WebP unter dem Limit gespeichert — und der automatische Kompressor rührt dein Bild nie an.

Post to X (Twitter) and Bluesky in one go

Compose once, customize the caption per network, and let SocialKit publish to X (Twitter), Bluesky, and 9 more platforms on schedule — no re-uploading, no copy-paste.

Start My Free Trial

€0.00 due today · cancel anytime · 7-day money-back guarantee