40 for a set of 104 keycaps is considered to be a pretty good price, the price usually only goes up from there, and by cherry keycaps you mean Cherry MX keycaps, and not keycaps from Cherry Corp? Keycaps from Cherry Corp run easily 50+, so finding a full 104 set for under 30 is going to be pretty rare, but good luck.