I generalize. Photo-to-SKU, not their product photos. Exception queues, not their vendor. If a detail could only belong to one client, it stays off the blog.
I would rather sound slightly abstract than get a lawyer email. Trust is the freelance business model.
Ask when it is close
If I want a screenshot, I ask. If they hesitate, that is a no. Edited UI with fake data is fine.
Public is a filter
Writing in public also keeps me from pretending. If I cannot explain a design without confidential context, maybe the design is too special-cased to be a story yet.