I think having a target % is the wrong approach. That gives you an excuse to spend up to the target. "Target is x%, or $yyy for groceries, and I'm $20 below target, so no need to evaluate that or look for fat to trim."
Instead of working from percentages down, work from requirements and non-negotiables up. Aim to get your grocery spending as low as possible. If it's at $750, aim for $600. When you get to $600, see if you can push to $500. If you stall out, then set your budget there--$550. If you can still manage fairly well, push more. Once you hit the point where you simply aren't willing to do what it takes to make more cuts, you've got your number.
Giving yourself permission to spend 30%, or 15%, or whatever, on frivolities locks in waste that you might otherwise fairly easily cut.
Better still, if you have the discipline, go to zero based budgeting where you evaluate each purchase or expense on its own merit, with no targets at all. It's not for everyone, but for those for whom it works, it is likely to have the best results because there is never permission to spend just because you happened to save on something else.