TipBITS: How Fake Contacts Can Fix Dictation’s Proper Noun Problems
I’m a big fan of Apple’s Dictation on the iPhone because typing is so slow and error-prone. But Dictation introduces its own frustrations, particularly with regard to proper nouns. I’ve identified three separate problems:
- Capitalization: Common words that are part of a proper noun, such as FLRC Challenge or Brooklyn Public Library, won’t be capitalized properly in dictated text. Improperly capitalized words give me conniptions.
- Unpredictable recognition: You never know how Dictation will recognize proper names that aren’t in Contacts, something I often encounter with building names at Cornell, like Teagle Hall.
- Contact conflicts: Dictation often prefers names in Contacts to common words that sound the same. When I dictate the word “ride” in Strava, I often get “Ryd,” because a friend’s last name is Ryd.
What to do? Apple doesn’t provide a user-editable list where you can add special words, but there is a back-door way to train Dictation—on all your Apple devices—to work more the way you prefer: through the Contacts app.
Add Custom Words to Contacts
The first two issues can be solved by adding entries to Contacts. Now that I’ve created a contact for “FLRC Challenge,” Dictation capitalizes “Challenge” correctly every time. Similarly, a contact for “Teagle” ensures that I no longer end up with wild guesses like “Thiago” or “Tego” (which aren’t in my Contacts either).
Regardless of the number of words in the name or phrase, I put them all in the First Name field, with the hear-no-evil monkey 🙉 emoji in the Last Name field. That way, these spurious contacts sort to the very bottom of Contacts and don’t clutter the display. I also add them to a Proper Noun-Contacts list (mentally removing the “u” amuses me).
Dictation picks up some of these entries quickly, such that you don’t have to do anything more. However, in other cases, it requires more training. For instance, the Finger Lakes Runners Club hosts a race called the Thom B. Trail Runs. I frequently need to use that name in dictated text, but Dictation usually writes it as “Tom B” or “Toby” instead. I created a “Thom B.” contact, went to Notes, and dictated a few sentences like “I will be timing at Thom B. tomorrow” and “The Thom B. course is part of the FLRC Challenge.” They came out wrong the first few times, but iOS usually underlined “Tom B,” enabling me to tap it and choose “Thom B.” from the replacements. After correcting mistakes in a variety of sentences, Dictation improved.
Even so, however, it didn’t like the trailing “B.” in the name, often recognizing it as “be” or failing to include the period in the middle of a sentence. I believe I addressed that by editing the contact in Contacts on my Mac to use a non-breaking Option-space between “Thom” and “B.” in the hopes that it would cause Dictation to see it as a unit. It’s too early to know if it works universally, but my test sentences are now being recognized every time.
Insert a Zero-Width Space in Conflicting Names
The third problem, when a proper name in Contacts conflicts with a common word, is more difficult to solve. Sometimes, you can work around it using your sentence structure. For instance, if I say “Ride into Teagle” in a Strava post, I’ll often get “Ryd into Teagle.” But if I say “Bike ride into Teagle,” Dictation usually gets it right because “ride” makes more sense than “Ryd” after “bike.” It’s worth trying, but you’ll likely still end up with the wrong word some of the time.
The nuclear solution would be to delete the contact, and that may be a good excuse for getting rid of unnecessary or unknown contacts—I certainly have a bunch of people in Contacts whose names I barely recognize, much less use. What if you want to keep your contacts and continue using them normally, without their names overriding common words in Dictation?
Here’s a solution: the zero-width Unicode space. My friend’s last name is “Ryd,” but if Contacts sees it spelled “Ry d” with a space, that’s a very different string. A regular space or non-breaking space would look strange, but a zero-width space is invisible and shouldn’t affect how the name appears anywhere else, including mailing labels. Inserting a zero-width space in the middle of the word did indeed prevent Dictation from recognizing it. Unfortunately, the zero-width space also gets in the way of searching on the full name, so it’s best to put it as far back in the word as possible. That way, searches on the first few letters will continue to work, and the name will continue to sort where you expect.
Unfortunately, it’s a little fussy to insert a zero-width space. Here’s the easiest general technique I’ve come up with—please suggest any easier alternatives you can develop. As with the Option-space above, this can only be done in the Mac version of Contacts.
- Open System Settings > Keyboard > Input Sources, and click the + icon at the bottom left to add a new input source.
- Scroll to the bottom of the list, click Others, select Unicode Hex Input, and click Add.

- Switch to Contacts, select the contact to edit, click the Edit button, click the name field to edit, and position the insertion point where you want to insert a zero-width space.
- From the Input Source menu in the menu bar (which may have an A icon), choose Unicode Hex Input to switch to that keyboard. The icon will change to U+.

- Working carefully, since nothing appears on the screen, press and hold the Option key and type
200bto insert the Unicode character code U+200B. (You don’t need to press the Shift key when typing the B, but it won’t hurt if you do.) - Click the Done button to save your changes. If you want to verify that they took, copy the text of the name and paste it into BBEdit, which will display an upside-down question mark where the invisible character is. You can also copy that character from BBEdit and paste it into other apps in the future, if that’s easier. Your regular input source should take over again right away, but remember that you’ve enabled Unicode Hex Input if anything weird starts happening with your keyboard (see “Mysterious Mac Login Failures? Check Your Input Source,” 20 March 2026).
- Wait for Contacts to sync your change to the iPhone. I sometimes change the Company field so I can tell the sync has happened. If you’re not using iCloud to sync Contacts, you’ll have to perform a USB sync.
- Dictate some more sentences to Notes to see if your change was sufficient. If not, you may need to search in Contacts to see if any other people share the offending name.
I’ve used this technique successfully with several names, so I have high hopes that it will work more generally for others as well. The only downside is that an invisible space could have unintended consequences down the line, so I strongly recommend adding a note to any contact you modify in this way, explaining what you’ve done so Future You can figure it out. Let me know how it works in the comments!

I use dictation to transcribe old record books in BBEdit, and have a few repeating errors. One is that the word “said” is frequently used, as in “said road” which almost always becomes “Syd Road.” Since I have no one named “Syd” in my contacts, that isn’t the problem.
So I tried entering a new contact with a first name of “said road” and
as the surname. Almost immediately, dictating sentences containing “said road” into BBEdit produces the correct response.
I next tried it on the word “thence” (used in place of “then” in these records), but I am still getting “fence” which likely means that the word is too archaic since I’m clearly pronouncing it correctly.
I have a few others I want to try out, but for now your suggestion is already helping!
Brilliant!
Indeed, brilliant and worth trying.
It would be nice if one could apply grep to contacts app.
Would be even nicer if one could create a Smart group within Contacts that could live update this grep search.
I prefer voice transcription over keyboards too and I’ve had the same frustration with Apple using my Contacts list in preference to a dictionary or just listening to my voice or making sense in context.
I also thought of this idea to add frequently misunderstood words to Contacts to improve the transcription and it’s generally worked; however, I often see my iPhone correctly understand and enter what I want it to transcribe but a few seconds later it switches to a similar sounding word so I’m still often going back and fixing the transcription..Apparently there’s some multi-step work going on in the process between the initial determination of what I said and what’s finally decided to enter.
Apple should implement user dictionaries as the priority source for dictation/transcription reference along with some AI.
All very helpful, and I’m sure many people will appreciate your efforts and ingenuity, Adam.
But it should not be necessary.
And does any of this explain why iOS dictation randomly capitalises ‘the’ in the middle of a sentence?
I also use the word expansion feature (Settings > General > Keyboard > Text Replacement) to overcome some dictation challenges, such as my female friend called ‘Peta’ and my cat called ‘Woozle’. But it still remains irritatingly error-prone.
Fascinating! I don’t use dictation (but I might give it a go after reading this) but I still learnt loads from this article. Including the existence of the zero-width space. How about using Text Replacement to make it easy to type?
Many many years ago, IBM’s OS/2 operating system came bundled with voice recognition/dictation.
It had plenty of issues, but one feature I loved was its ability to learn via user interaction.
When dictating, if you noticed an error, you could select the mistake and fix it. You could (via a popup menu, I think) hear the audio it converted to that text, and type new text to correct the mistake. It would learn from your corrections.
I wonder if any modern dictation systems (not just macOS Siri) offers a similar feature.
There’s a much easier way that doesn’t require adding any keyboards or changing settings (or remembering strange code point input methods).
»in the bottom right:spacein the Character Viewer and then click on the ‘empty’ squares until you find the zero width space:It might be worth noting that the list of panes (the left sidebar in the Character Viewer) is customizable. If you don’t see the Unicode table listed, then click the menu in the upper left corner (under the traffic light buttons, here marked with a … icon—in some older systems a different icon was used). Choose Customize List…. There are many panes to choose from. Hide the ones you don’t use and show the ones you do, Unicode is near the bottom under Code Tables.
Once you have found the character you want, if you will use it often, you can mark it as a Favorite. Then it will appear in the Favorites (or Favourites , if you prefer), where it is easily found.
Do you have The in a contact name?
I tried that, but the Text Replacements interface didn’t seem to accept it as a character to type. I think Keyboard Maestro could do it, though I haven’t tried.
Points to you! I was pretty sure there must be a better way.
That’s a good point – Favourites should also appear in the emoji picker even if they’re not emojis (other Unicode characters do for me, I haven’t tried with the zero width space).
There used to be a user dictionary you could add words to. Last time I checked, it does still exist in the ~Library, but I’m not sure if dictation accesses it anymore.
Along with other commenters, I noticed Dictation’s proclivity to prioritize Contact entries over real words. So I had already implemented some of your suggestions, as well as adding people whose name I use frequently, but don’t know personally, into my Contacts.
What bothers me a lot more is macOS Dictation’s recently-acquired habit of liberally sprinkling my text with commas and periods and inappropriate capitalizations. I spent some quality time with an AI which suggested a number of Terminal commands, although I haven’t had the nerve to try any of those yet.
A few years ago Dictation worked really well, and it works really well now on the iPhone as opposed to macOS. One step forward, two steps back?
You could create a Keyboard Maestro macro that uses Insert Text by Pasting. The tricky bit is getting what to paste. I was able to do it by following @jzw’s instructions and then to get it into my favorites in Character Viewer, and then:
NOTE: Unicode was not available to me at first in Character Viewer. In the upper left, you’ll see a 3-dot menu in a circle. Choose Customize list. Then you’ll see categories. Scroll to the bottom where you’ll see Code Tables. Use the chevron to open it, and THEN you can add Unicode to your list in Character Viewer and fall down @ace’s rabbit hole with him.
I’m pretty sure that is used only for custom vocabulary words for voice control, not dictation. You work with that in System Settings > Accessibility > Voice Control > Vocabulary.
It looks like it’s stored in an SQLite database now.<>/Users/adam/Library/Application Support/Google/DriveFS/106741850554591477322/metadata_sqlite_dbThis is much more likely:
/Users/adam/Library/Preferences/com.apple.SpeechRecognitionCore.Vocabulary.plistIs this for the built-in voice control? It seems unlikely Apple would be storing a dictionary for that in a Google Application Support folder.
I spoke too soon (I was running what turned out to be a very slow search for my test word, which I have apparently used for similar things before), and this file is much more likely:
/Users/adam/Library/Preferences/com.apple.SpeechRecognitionCore.Vocabulary.plist