"Anonymous" is one rung on a three-step ladder that public proxy lists use to grade proxies by the headers they add to plain HTTP requests:

LevelYour IP visible?Proxy visible?
TransparentYes, in X-Forwarded-ForYes
AnonymousNoYes, usually in Via
EliteNoNo

An anonymous proxy strips your address but announces itself, typically with a Via header or a Proxy-Connection header. The site cannot see who you are, but it knows a proxy sent the request and can treat it accordingly.

How to check a proxy's level

Send a plain HTTP request through the proxy to a header echo service and read what arrives:

curl -s -x http://USERNAME:PASSWORD@HOST:PORT http://httpbin.org/headers

Use an http:// target on purpose. For an https:// site, the proxy only relays an encrypted CONNECT tunnel and cannot add headers to the request inside it, so every proxy looks elite over HTTPS. The grading only means something on unencrypted traffic.

What "anonymous" does not mean

The label is about headers, nothing more. It does not make you anonymous to the proxy operator, who sees every plain-HTTP request you send and the hostnames of your HTTPS ones. It does not stop a website from spotting a proxy either: sites judge the exit address by its network owner and reputation, not only by headers. For the full picture of what a proxy reveals, see what a proxy server is.