This may sound silly, but once a week I hide my credit card away for a full 24-hours. This simply means that I cannot spend anything on my card that day. I can obviously spend cash, but one is generally more concious when spending cash.
This does not stop me buying things that I really need though as I can still get them the following day; but “silly” things that I would sometimes buy become irrelevant when I can’t buy them. It also helps me plan better knowing that I can’t just pop out and spend.
Give it a try and just don’t spend anything on your card for a full 24 hours. It’s best if you physically hide your card somewhere. It’s actually really easy to do and the rewards may seem small but in the long run every small bit adds up. Not only the physical money but also the mental observance of what is really important and what is not.