I have a list of ~4k words in my conlang, which I've boiled down from English concepts to what I would call the "base list" of words. In theory, everything can be built upon these words. I mean, in theory, everything can be built upon 1's and 0's, so there is a tradeoff in readability/speakability and the size of the vocabulary. But I'm trying to balance human's memory capability and not have too many words. Like I've heard experts know 100k words in English max, but there are millions of English words. Etc..
Then I'm thinking, in English there are names of people and places which are completely made up words / sound sequences. I was driving down the freeway and seeing all kinds of names of streets which are not meaningful words or human names, but you could still pronounce them. This adds to the "vocabulary" a lot.
I'm wondering if you can avoid this explosion in vocabulary (human / place etc. names). For example, in English, "common plant names" are not used anywhere else (Toyon, Yarrow, etc.). Same with those street names.
How do other languages handle it (natural or conlangs)? Are there natural languages which don't have made up sound sequences which fit into the rules of the language? I am imagining Native American stereotypes like "Dark Horse" for a person's name (where the words have standalone meaning), instead of "Tom Sawyer" (which words don't have any standalone meaning). Do any natural languages avoid the problem of adding thousands / millions of words like this, which are otherwise meaningless?
I know the definition of word is fuzzy and varied / hard to define across languages. I know it Turkish and other agglutinative languages you have infinite word possibilities, so not really thinking like that. I am imagining more for an analytic style language like English or Chinese or Vietnamese, whether conlang or natlang, how you can avoid the problem of introducing meaningless identifier words which would increase the size of the vocabulary drastically.