How to Create a .txt File on Mac Without TextEdit

If you've ever double-clicked a .txt file on Mac and watched it open in TextEdit, you might assume TextEdit is the right tool for the job. It's not — at least not by default. TextEdit opens in Rich Text mode, which quietly embeds formatting data into your file even when nothing looks formatted. That hidden markup breaks scripts, config files, and anything else that expects genuinely plain text.

Here are the most reliable ways to create a clean .txt file on Mac, none of which involve fighting TextEdit's settings.

Option 1 — Use txtnote.online (fastest)

This is the quickest method if you just need a .txt file right now. Go to txtnote.online, paste or type whatever you want in the editor, give it a filename, and click Download. The file is built entirely in your browser — nothing is uploaded anywhere — and lands straight in your Downloads folder as a genuine UTF-8 plain text file.

No app to install, no settings to change, no account needed.

Option 2 — Terminal (reliable, always available)

Every Mac has Terminal. It's in Applications → Utilities, or just search for it with Spotlight (⌘ Space).

Create an empty file

touch ~/Desktop/myfile.txt

This creates an empty .txt file on your Desktop instantly. Open it in any text editor and start writing.

Create a file with content already inside

echo "Your text here" > ~/Desktop/myfile.txt

The > operator writes the output of echo directly into the file. If the file doesn't exist, it creates it. If it does exist, it overwrites it — so be careful.

Append to an existing file

echo "More text" >> ~/Desktop/myfile.txt

Using >> instead of > adds to the end of the file rather than replacing it.

Option 3 — Force TextEdit into Plain Text mode

If you want to use TextEdit, you can make it behave. Go to TextEdit → Settings (or Preferences on older macOS) → New Document, and switch Format from Rich Text to Plain Text. From that point on, every new file TextEdit creates will be a real .txt file.

One catch: even in Plain Text mode, TextEdit sometimes saves files as .txt with smart quotes and em-dashes substituted in. If your file will be read by a script or a server, double-check those settings too — turn off smart quotes under the Substitutions tab.

Option 4 — VS Code or any code editor

If you have VS Code, Zed, BBEdit, or any code editor installed, File → New File → Save As → name it with a .txt extension. Code editors never add hidden formatting. This is what most developers use for quick plain text notes.

Option 5 — Automator (for batch creation)

If you need to create .txt files regularly as part of a workflow, Automator can handle this. Open Automator, create a new Quick Action, add a "Run Shell Script" step, and use touch or echo commands to generate files wherever you need them. You can trigger it from the right-click menu in Finder.


Why does this even matter?

Plain text files are the most portable, durable file format that exists. A .txt file you create today will open perfectly on any computer, any operating system, in 30 years. Rich Text Format (RTF) and DOCX files depend on applications that might not exist. Plain text doesn't.

For notes, logs, config files, scripts, and data — plain text is almost always the right choice. The only time you need rich text is when formatting genuinely matters for the reader, like a formatted letter or a document with tables.

Quick comparison

Here's a fast rundown of each method so you can pick the right one for your situation:

  • txtnote.online — best for one-off files, no setup, works in any browser
  • Terminal (touch/echo) — best for developers and power users, fastest once you know the commands
  • TextEdit (plain text mode) — fine for casual writing if you fix the settings first
  • Code editor — best if you're already in one, zero configuration needed
  • Automator — best for repeated workflows and batch file creation

Any of these gives you a clean, honest .txt file. The one to avoid is TextEdit in its default Rich Text mode — it looks like it works, but the file it creates isn't really plain text.