You have built a great reputation over 25 years. Your website is not keeping up with it. Here is what is going on, in normal words, checked with the same tools Google uses. No tech talk.
If you only read one thing, read this.
You were proud of two things. Both deserve an honest answer.
That 91 is real. It is a score for having the right labels in the background of your site.
Your site actually has 41 pages, and about 30 of them are city pages. Most are the same page copied over and over with just the town name swapped in.
These are real scores from Google's own tool, testing your site on a phone. Most people looking for a plumber are on a phone.
When someone with a burst pipe pulls up your site on their phone, here is the first thing they see. On the right is your exact business, rebuilt with your own photos.
Each one has the score, then what it means for you in plain words, then the fix.
On a phone, the first screen is only your logo. No call button until you scroll way down. For a plumber who takes emergency calls, the phone number is the whole game.
Your site is built on Wix, which loads a lot of extra stuff before anything useful shows up. About 8 seconds before the page fully works, and it weighs about 1.8 megabytes with 200-plus separate pieces loading.
You have 120-plus five-star reviews. But your site is missing the little bit of code that tells Google to show a star rating next to your name, so Google shows nothing. There is no rating anywhere on your site.
Your city pages are thin and copied. One page has a headline about Hendersonville but the whole page is about water heaters. Another page's web address says "affordable plumber" but the page is actually about sewer inspection. The address and the page do not match.
You have four or five different pages all trying to rank for the same thing, like sewer repair in Hendersonville.
The homepage shows one review. On a computer your logo loads twice, and there is a stray "0" floating in the top corner (a leftover from a shopping-cart feature you do not use).
Credit where it is due: your background labels are set up well (that is the real 92), the site is easy to read, and your business itself is a rock. 25 years, licensed and insured, and a genuine 5.0 rating across 120-plus reviews.
He is not a better plumber than you. He just wins the part that happens before the customer ever meets him.
A careful, low estimate using your real numbers and Google's own figures.
That is roughly the work slipping away every month, from a slow phone site with no call button and from losing the map spot to competitors who show their reviews. The most expensive part is emergency calls, because those folks are ready to pay right now and they are on a phone.
Fifteen minutes. We will show you the demo and where the calls are leaking. No pressure either way.