I was trying to read up on it and just based off of the manual it seems not to make sense if I’m not using --silent alongside it, but I found this one article stating otherwise: https://nrogap.medium.com/show-error-response-for-curl-64666cd64330
I can’t figure out if it’s just AI slop or badly researched since it doesn’t even show a real URL to test the commands against.
Manual entry:
-S, --show-error
When used with -s, --silent, it
makes curl show an error message
if it fails.
This option is global and does not
need to be specified for each use
of -:, --next.
Providing -S, --show-error multi‐
ple times has no extra effect.
Disable it again with --no-show-
error.
Example:
curl --show-error --silent https://
example.com
See also --no-progress-meter.


So based on both the man page and your findings, it’s safe to assume that the medium article is wrong.
We both see different behavior than what it suggests and that behavior is in alignment with a different, trustworthy source of documentation!