1998 Chevrolet Silverado Intermittent starting issue

Ok, here is the breakdown:
1998 Chevy Silverado 5.7 automatic

I am having a starting issue, meaning that sometimes it starts fine, sometimes it barely cranks over (usually at night when ive used headlights).

What I know: It is charging at 14 plus volts (sometimes as high as 16).
The battery (battery#1) was showing 12.5 with engine off just after episode of it barely starting. This battery is less than a year old but I took it in to where I bought it and they said its bad. they gave me a new battery (battery#2).
Battery#2 is now two days old and was working great but then started doing the exact same thing as the first one last night. My truck would barely start after I got home last night. I once again tested the alternator, and its putting out plenty of voltage and the battery is showing 12.5 with engine off.
This morning it started fine, which is wierd cause it barely started last night. so I took it to autozone and they put their tester on it while running and confirmed my alternator is good. I shut it off and they tested the battery. At first he says, “oh it says 100%charge but bad battery” then he says “oh now its saying 50% charge good battery”
I have visually inspected connections and all seem to be solid with no shorts or lose wires.

Could this possibly be a second bad battery? first one being less than a year old and the second one only days old?
Should I suspect something internal in the starter only getting a partial juice.
Could the alternator be putting out volts but no amps? The vehicle runs fine even with lights on. so Im disinclined to think its the alternator.
I have tools and an analog volt meter. Anybody have any troubleshooting tips?

Your vehicle has the side mount battery cable connections. And on the postive cable connection under the red cover corrosion can form causing a voltage drop.

Remove both cables from the battery. And then peel back the red rubber cover on the positive cable to reveal the terminals. If a lot of corrosion is found under the cover replace the positive battery cable assembly.

Tester

Thank you. I checked and everything is clean. I have already checked all connections from battery to alternator to starter and also the battery ground connections.

I suggest you use a digital multimeter. They’re more accurate. If your alternator is really putting out 16 volts, you’re literally cooking the battery.
I also suggest you perform a parasitic draw test. Again, that’s where the DMM would come in.

my apologies tester. I went to take a second look at the pos cable. it looked clean between the batt and the cable, but when I peeled the two cable washers apart there was a solid layer of corrosion. I cleaned it and its running well. The problem has been intermittent but I can see where this would cause the tester to say its good and bad since the probes go on the post bolt and not the battery itself.
thanks!

@db4690 is right. 16 volts is not a healthy alternator. A good alt will put out 14-14.5 volts during operation. Anything more can wreak havoc on a battery.

It was probably putting out 16 volts cause it was registering low voltage due to corrosion. it was 14.5 after I cleaned the two pos connectors

@ShiftChevy FYI GM calls for a charging voltage of 14.2-15.2V. If the battery posts are severely corroded, just replace them. They should be available at any decent auto parts store.

It was light corrosion. Ill check them again in a month and if I see any new corrosion Ill replace them. thanks for your help everyone!