One quick way to narrow down which cause you’re dealing with is to watch how the color behaves over the next day or so.
If it’s mostly metals, especially iron, the brown usually looks very even, almost like weak iced tea, and it doesn’t settle much on the floor. You might also notice light staining starting on steps or around returns as the chlorine keeps oxidizing it. Filtration alone won’t grab dissolved metals, so the color just hangs there until it’s dealt with.
If it’s organic staining from leaves, dirt, or soil fines, you’ll often see the color slowly lighten as the filter runs, and sometimes a brown or tan dust will start collecting on the floor that you can vacuum. Storms can also churn up fine dirt that was already in the pool but settled, so it looks like it “came out of nowhere.”
One other sneaky source after storms is runoff from decks or gutters. Even if nothing obvious fell in, rainwater can carry rust, soil, or tannins right over the coping and into the pool. That explains why it can change overnight without the pool looking full of debris.
Running the pump continuously, keeping baskets clean, and watching whether the color settles or stains will usually tell you which direction you’re headed. The speed of the change points to chemistry reacting with something new, not a filter failure.