Depends on budget and whether he wants a traditional tool tethered on a cable or some wireless link to a host, phone or tablet or laptop depending on needs and what he already has vs budget, again.
Also depends on his competence to USE the data. Some have more "help" to determine what a code is, and some just tell you and you can google search it yourself and have equally good results if not better, but it's an extra step which some have a mental block against.
Again budget, some can do the GM specific codes for things outside the OBDII code set, but what does "works on mainly" mean? A more advanced tool makes more and more sense, the more vehicles you're working on, but paying a premium for GM but also needing others, may or may not make sense. Still comes back to budget.
What is his level of repair ability? Paying extra for a reader that tells you that you still need to take it to a shop, isn't always price effective, but if he is one who tries to do EVERYTHING himself, then the savings of not paying shop labor, can buy a lot of scan tool.
Does he have anything yet? If not, that tells me a little about his skill level and that he's probably best starting out on a basic ELM327 based bluetooth module, which can be picked up at very low cost, then when he finds deficiencies in that, enough times to warrant upgrading, then he should also have a good idea what more he wants and needs... kinda the same as any tool.