I have a boot drier I use for both running and bike shoes when they get wet. Helps them dry quickly and avoid stink with wet shoes.
If the stink persists, I was them in dishwasher with dish soap w/o any dishes on top shelf with insoles taken out and open wide. No drying them in there. After they come out they are quite wet so I put newspapers in them to get some moisture out then pop them on my boot drier and they are good.
The best way to keep both bike shoes as well as running shoes from becoming stinky is to keep them dry. My wife and I have used a boot drier for the last 30 years and find that even 5 year old cycling shoes still smell fine as long as you put them on the drier after each sweaty ride. We each have our own so there is no problem sharing.
I use the local laundry down the street 2 - 3 times a year. I usaually take both running and cycling shoes along with a couple of extra large towels to throw in as well, helps keep it quite. Run them thru a normal wash cycle and then place out to dry. Yes, remove the insoles as well.
Boot dryer x100. I have 4 double dryers and a single. I’ve used the same pair of shoes for about 10 years on my Computrainer 3-4 times per week year around. And though they don’t smell out of the box new, they don’t issue any foul odor.
The bad stink is really from fungus/mold that grows when things are left damp. Once that funk sets in its almost impossible to get rid of. Letting things dry out in the sun or soaking in mirazyme help but the easiest thing to do is to dry stuff ASAP and don’t let the fungus/mold set in in the first place. The same goes for wet suits and towels and really anything that gets wet all the time. You don’t want to stuff wet gear into a plastic bag and leave it for hours. I always try to use mesh bags and try to let stuff air out as much as possible if i cant get to my boot dryer. Boot dryers can also be used for helmets, gloves, and you can even drape ur wet suit over it.