Customer Feedback (repeat customers)

We want to start building customer feedback campaigns into Infusionsoft and trying to find the best way.

We have to ask specific questions for reporting purposes for our funders and our clients return to us many times to purchase different services. We need a satisfaction score out of 5, what a client liked the most, the least, and request a testimonial.

From what I can tell is if I build a web form and match fields to custom fields, then if the customer returns to us for another service, these fields will be overwritten. Is that correct?

I have also started looking at using Survey Monkey, linking through Zapier, but that creates the issue that we will not be able to view the customers previous feedback when looking at their profile when they walk-in or call us.

Is there an ideal solution or do we just have to choose our priority?