As my mother used to say “Maybe he just doesn’t have anything to say right now. Give it time and it’ll come, some kids are thinkers and some are talkers.” My son is off the charts on problem solving, does 100 piece puzzles that are smaller than a sheet of paper in about 10 minutes and from what his daycare teachers say he’s almost effortlessly doing things that kids a year or two ahead of him struggle with. Only thing he was slower on was talking (and shitting in the toilet now) but he didn’t really have to talk, my wife and I knew what he wanted and what he meant so we just took care of his needs. Once we stopped just doing it and made him communicate what he wanted he blossomed, add to it the big transitions of not having my mom babysit and being thrust into daycare and he was essentially forced into using his words. We were enabling him to not have to talk but when he wanted something and we wouldn’t give it to him until he at least tried to say what it was he realized that’s how to communicate and he’s been a chatterbox ever since. At 2 he had a monosyllabic vocabulary, at 2.5 he used bigger simple words and a few sentences, at 3.5 years old he’s saying dinosaur names like quetzalcoatlus and stygimoloch.
Repetition is key for learning speech. You’re eating pretzels and they want some? Instead of letting them just snatch a bunch hand one to them and say “Pretzel. If you want one you have to say pretzel!” and then EVERY TIME we handed him a pretzel we’d say the word and he’d try to repeat it. We literally did this with EVERYTHING he encountered or showed mild interest in, once he caught on he’d start saying whatever word he thought he could say. From there we started forming sentences “Can I have a pretzel, please?” and we wouldn’t give him a pretzel until he at least tried the sentence. It’s really tough to do and you have to realize that no matter how frustrated you are with their speech they are way more frustrated with it.
The trick is getting them to realize that grunts and single words don’t cut it anymore and it’s hard watching them get frustrated because they know what they want but they can’t tell you. If you can find something they really like and talk to them about it (like my son and dinosaurs) and have them repeat words after you say them their vocabulary will explode almost overnight.