From my understanding:
1- Free Membership is free lifetime ?
2- Sponsors and Gold sponsors are a minority of known high givers, while subscribers can be anyone ?
3- there is no problem that a Sponsor sees normal subscription plans, correct ?
4- Do you currently have real subscriptions for free membership, visible in the CB -> Plugins -> CB Paid Subscriptions -> Subscriptions list ?
5- Which means you had in CB Paid Subscriptions -> Settings -> Global -> Registration settings -> "Create Subscriptions also for free lifetime plans" turned on ?
6- "This Plan is at the top level of the Plan hierarchy, and all other Plans have it as their parent." but i thought you only had "Free Membership" and "Sponsor" plans ? which other children plans do you *already* have ?
Generally, I would not recommend having 3 levels (2 levels of parent plans), with 2 free levels above paid levels for user-experience and simplicity, but some cases in the purchase experience can justify it.
And specially should subscriptions and sponsorships be exclusive among themselves ?
I guess, to respect the current arrangement, which is safer, the simplest setup would be to have:
“Free Membership” (exclusive, child plans always visible, existing)
– “Subscription” (exclusive, existing)
– “Gold Subscription” (exclusive, new)
– “Sponsorship” (not exclusive or exclusive, hidden)
– “Gold Sponsorship (not exclusive or exclusive, hidden)
The very simplest setup would be, but requiring to NOT have subscription records for the free plan:
“Free Membership” (exclusive, default plan, no subscription record)
“Subscription” (exclusive)
“Gold Subscription” (exclusive)
“Sponsorship” (not exclusive, hidden)
“Gold Sponsorship (not exclusive, hidden)
BUT: if you have subscriptions, don't change their plans hierarchy.
Otherwise this should work too (if you don't have "Sponsorship" subscriptions active and child of "Free Membership"):
“Free Membership” (exclusive, child plans always visible)
– “Subscription” (exclusive)
– “Gold Subscription” (exclusive)
“Sponsorship” (not exclusive, hidden)
“Gold Sponsorship (not exclusive, hidden)
And if you want different rights for members and sponsors, you could also have:
“Free Membership” (exclusive, child plans always visible)
– “Subscription” (exclusive)
– “Gold Subscription” (exclusive)
“Sponsorship” (exclusive, hidden)
– “Gold Sponsorship option (not exclusive, hidden)
So everything should work on a fresh installation, but keep existing hierarchy preferably and choose the solution that works best for you and that is easiest for your users and clearest for your marketing.
Functionally the most Important is that if your existing plan "Free Membership" is the parent plan of your 2 other plans, AND that parent plan has subscriptions records and the child plans too (which I now read is the case!), then that hierarchy should stay, and you should add the new plans also below that "Free Membership", if they are exclusive to the existing subscriptions, as subscriptions are tracking their hierarchies as well, and changing plan's hierarchy without adapting subscriptions hierarchy one by one or in the database is untested and could work or lead to unexpected results.
EDIT ADDED: So flattening current plans hierarchy would require extensive testing on a site clone, or just zero out corresponding parent_plan and parent_subscription columns in the #__cbsubs_subscriptions MySQL table.
Does that answer your questions to choose your setup ? Otherwise, please reply/confirm the numbered suppositions/questions above so can better answer.