The thing nobody tells you about a denim jacket is that it takes about a month of actual wear before it starts looking like yours rather than like it just came off a rail. The collar softens, the cuffs go a shade paler where your wrists rub against them, and the whole thing stops being stiff and starts moving with you. Buy one expecting that transformation, not instant perfection, and you won't be disappointed.
This is a spring and autumn piece more than anything, the kind of jacket that earns its spot on the days when a coat feels like overkill but a cardigan won't cut the wind. It works over a dress in April when the morning is cold and the afternoon isn't, and it works in September thrown over a t shirt when summer hasn't quite let go. Winter is where it struggles, denim has no real insulation to speak of, so unless you're layering it over a jumper for a short walk it's not pulling its weight once the temperature properly drops. In the shop, skip straight past how it looks done up and check the weight of the denim, the stitching on the pockets, and how the buttons sit, a jacket that's too thin will crease badly and never hang right, while one that's too heavy will feel like wearing a tent. Clashing is less about colour than about doubling up, two different washes of denim in one outfit rarely looks deliberate unless you're genuinely going for it, and a dark indigo jacket over dark jeans in a different tone can read as mismatched rather than considered.
Fit is where most people get it wrong, and I include myself in that, having bought one a full size up years ago because I wanted to layer a jumper underneath, and ending up with sleeves that swallowed my hands and shoulders that sat halfway down my arms. The shoulder seam is the detail to watch, it should sit at the edge of your shoulder, not drooping past it, and the body should skim rather than hang, since denim doesn't have the give of a knit to forgive a size that's slightly too big. If you're between sizes, size down rather than up, you can always wear a thinner layer underneath but you can't make an oversized jacket behave.
Thrown over a plain dress you already own, it stops the whole thing looking like you tried too hard, and does the same trick over a white shirt you've had for years and nearly stopped wearing.