Plain Text vs. Rich Text on Mac: What's the Difference?

Open a .txt file and a .docx file side by side in their respective apps and they can look almost identical — black text on a white background, maybe some line breaks. But crack them open in a hex editor and the difference is enormous. One is hundreds of bytes. The other might be hundreds of kilobytes, even if the actual words are the same.

Understanding the difference between plain text and rich text isn't just a nerdy detail. It directly affects whether your files work where you need them to.

What plain text actually is

A plain text file (.txt) contains only characters — letters, numbers, punctuation, spaces, and line breaks. That's it. There is no information about fonts, colors, bold, italic, margins, or anything visual. The file is just a sequence of character codes, typically encoded in UTF-8.

Open a plain text file in any app, on any operating system, and you get exactly the same characters back. Nothing is interpreted, nothing is transformed. What's in the file is what you get.

What rich text adds on top

Rich Text Format (.rtf) and Word documents (.docx) layer formatting instructions on top of your text. Bold text isn't just bold — it's wrapped in markup that says "start bold here, end bold here." Fonts are specified by name. Colors have hex codes. Paragraphs have margin settings.

This formatting data lives alongside your text in the file. In RTF it's human-readable markup. In DOCX it's XML compressed inside a ZIP archive. Either way, the file is significantly more complex than the words it contains.

Here's a concrete example: the sentence "Hello, world." in a plain text file is 13 bytes. The same sentence in a freshly created Word document is around 4,000 bytes — nearly all of it formatting structure that has nothing to do with the words.

When each format makes sense

SituationBest formatWhy
Config files, .env, scripts.txt / plain textApps reading these files expect raw characters, not markup
Log files, data exports.txt / plain textProcessed by other programs that parse character-by-character
Quick notes and drafts.txtOpens anywhere, never corrupts, tiny file size
Formal letters, reports.docx or .rtfFormatting matters for the reader's experience
Documents shared with non-technical people.docxExpected format, preserves layout across devices
Code and markup.txt or specific extension (.py, .html)Code editors treat these as plain text regardless of extension

The TextEdit problem on Mac

TextEdit is the built-in Mac text editor and it defaults to Rich Text mode. This trips people up constantly. You open TextEdit, type some plain-looking text, save it as "notes.txt" — and what you get is actually an RTF file with a .txt extension. Other apps trying to read it as plain text see formatting garbage at the start of the file.

You can fix this by going to TextEdit → Settings → New Document and switching to Plain Text. Or you can use a tool that was built for plain text from the start, like txtnote.online, and skip the settings entirely.

Does the file extension tell you which format it is?

Not always. A file named "notes.txt" should be plain text, but as mentioned above, TextEdit can save Rich Text data with a .txt extension. The extension is just a label — the actual contents determine the format.

If you ever need to verify, open Terminal and run file yourfile.txt. It'll tell you the actual format of the data inside, regardless of extension.


For most day-to-day tasks on a Mac, plain text is the safer, more versatile choice. It works everywhere, it never breaks, and it doesn't lock your content inside a format that requires a specific application to read. Rich text earns its complexity when formatting genuinely needs to be preserved — and for everything else, .txt is the right call.