If he is eating kibble (which I assume is brown) and you are seeing pieces of kibble in the food in the vomit, then he hasn't digested the food all the way when he is vomiting. I'm sorry but I'm not much help in guessing what is causing this, but I wanted you to know the food hasn't been all the way digested. That is important info to tell the vet if you wind up taking him in. If he had no food in his stomach when he was vomiting, then the "vomit" (it isn't really vomit if there is no food in it) would be just mucus and range in color from clear to yellow. I hope you are able to get to th bottom of this and get tubs feeling better soon!
Has his food been changed recently? Also, is he taking a pro-biotic? If not, that might help to straighten his system out. I use a powdered probiotic for Audrey called "Geneflora" it also has digestive enzymes in it to help break down her food when she eats. There are mNy good brands out there to try, doesn't have to be Geneflora. If he is alreDy on a probitoic, I would double his dose for the next 2 weeks and see if that helps. If you just start a probiotic, do the same thing and double the dose for the first 2 weeks of giving it. Hope this helps!