<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Boldloom</title>
    <description>The latest articles on DEV Community by Boldloom (@boldloom).</description>
    <link>https://dev.to/boldloom</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4124996%2F81e814f7-2a62-4278-b722-80a057ce9fde.png</url>
      <title>DEV Community: Boldloom</title>
      <link>https://dev.to/boldloom</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/boldloom"/>
    <language>en</language>
    <item>
      <title>How LinkedIn "Bold" Text Actually Works (It's Not Bold At All)</title>
      <dc:creator>Boldloom</dc:creator>
      <pubDate>Mon, 14 Sep 2026 18:15:55 +0000</pubDate>
      <link>https://dev.to/boldloom/how-linkedin-bold-text-actually-works-its-not-bold-at-all-43e8</link>
      <guid>https://dev.to/boldloom/how-linkedin-bold-text-actually-works-its-not-bold-at-all-43e8</guid>
      <description>&lt;p&gt;LinkedIn has no bold, italic, or strikethrough button. Yet you constantly see posts with fake bold headers and slanted emphasis. Ever wondered how that actually works?&lt;/p&gt;

&lt;h2&gt;
  
  
  It's not formatting, it's a different alphabet
&lt;/h2&gt;

&lt;p&gt;Unicode has a block called Mathematical Alphanumeric Symbols (U+1D400 to U+1D7FF). It contains a fully separate set of letters and digits that just happen to render as bold, italic, script, or monospace, because they were designed for math notation, not chat apps.&lt;/p&gt;

&lt;p&gt;So when a tool "bolds" your LinkedIn text, it isn't applying a style. It's swapping each character for its bold Unicode twin:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;A -&amp;gt; Mathematical bold capital A (U+1D5D4)
a -&amp;gt; Mathematical bold small a (U+1D5EE)
1 -&amp;gt; Mathematical bold digit one (U+1D7ED)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A minimal JS version of the mapping looks like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;BOLD_MAP&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;A&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;u{1D5D4}&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;B&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;u{1D5D5}&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;C&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;u{1D5D6}&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;a&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;u{1D5EE}&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;b&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;u{1D5EF}&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;c&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s1"&gt;u{1D5F0}&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;toBoldUnicode&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;[...&lt;/span&gt;&lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;map&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;ch&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;BOLD_MAP&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;ch&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;??&lt;/span&gt; &lt;span class="nx"&gt;ch&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;join&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;''&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;LinkedIn's editor has no idea any of this happened. As far as it's concerned, you just pasted some exotic characters. It renders them like any other glyph, and there's your "bold" headline.&lt;/p&gt;

&lt;h2&gt;
  
  
  The catches nobody mentions
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Accessibility: screen readers often can't pronounce these characters correctly, because they aren't semantically bold, they're a separate codepoint that happens to look bold. Someone using a screen reader may hear garbled text instead of your headline.&lt;/li&gt;
&lt;li&gt;Search: since these aren't the "real" letters, search engines and LinkedIn's own search sometimes fail to match your exact phrase.&lt;/li&gt;
&lt;li&gt;Copy-paste breakage: paste this text into a plain text field, a code editor, or certain apps, and you'll sometimes get missing glyphs instead of your text.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Worth knowing before you bold your entire headline for the algorithm.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where I've used this
&lt;/h2&gt;

&lt;p&gt;I built a free LinkedIn text formatter (&lt;a href="https://www.theboldloom.com/linkedin-text-formatter/" rel="noopener noreferrer"&gt;https://www.theboldloom.com/linkedin-text-formatter/&lt;/a&gt;) that does this conversion, bold, italic and a few other styles, in the browser. No extension, no account. Useful if you want the effect without hand-rolling the character map yourself.&lt;/p&gt;

&lt;p&gt;Curious if anyone else has hit the accessibility or search issues above in practice. Let me know in the comments.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>career</category>
      <category>productivity</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
