Depends on how much you macro.
I merge Sabin, Lenna, and Vivi always, and keep 2 Edgars max.
Shantotto I will keep at least 3 even after I finish their TMs (have like 7 now). She gets a 5* upgrade down the road that does what Edgar does a hundred times better. Her 5* stats are already quite impressive, and they also gave her all of the -ja black magic.
I merged my 3 Lunas into one Barrage (then pulled 2 more, sigh).
Kain I have 10 of, and will eventually take ~5 days each to get 2 Gungnirs out of it; Gungnir isn't a good enough weapon to dedicate a full 0-100% on a single unit. Unless you have Elza and need two of them I would turn your three into one by taking them to ~30% each.
Garland you should keep to potentially use once he gets his 6* + enhancements, provided you can dig up 2 Bartz and TM them by then.
Alma I've kept 4 of as well, but I will probably do them 2 at a time and merge. My Exdeaths can never wear it, so I don't really need 4.
Edit: Finally caught a break on metal gods with my Maxwell/Tilith x3/Elza farm team, so I guess I don't need to agonize over which materia to buy anymore.