Yeah, you're totally right. Currently they are a percentage increase of the base value, (base * (upgrade1 + upgrade2 + upgrade3 + upgrade_n)) but I think instead they should be cumulative (base * upgrade1 * upgrade2 * upgrade 3 * upgrade_n). This may require a lot of other balance tweaks to make it feel right again though.
Really appreciate the thoughtful feedback! I'll post a devlog once I've made this adjustment.