Consistency (WCAG 3.2.4) and labeling (WCAG 4.1.2) and are two important points in accessibility that apply to your situation.
In your first two button examples, the "quick scan" has an icon on the left but the "custom scan" does not. And not only does it not have an icon on the left but instead it has an icon on the right.
For consistency sake, have all the buttons have an icon on the left (or wherever you want to put it) and then, in addition, you can have an icon on the right with the lock feature.
It's much easier to learn that pattern, that all buttons have an icon on the left that matches what the button will do, and then the buttons that have a second icon on the right will be "special". In this case, requiring a paid account.
Or if you want to keep it "clean", have no icon on the left for any of the buttons but have a lock icon for features only available for paid accounts.
If you do have icons for all buttons, the icons are decorative (as opposed to informative) since the text on the button matches what the icon is trying to convey so the icons can be hidden from assistive technology such as screen readers. (How they're hidden is an implementation/coding detail that is best addressed on stackoverflow.com, but if you're using HTML, then
aria-hidden="true" will work.)
However, the lock icon is informative so its meaning must be conveyed to assistive technology. That's usually through alternative text on an image or you can include it on the accessible name of the button (often with
I just came across this real world example on the AllTrails iOS app. I was using it the other weekend and tapped on a few buttons that had a special blue hexagon icon and when I tapped on them, they took me to trial offer page. This isn't the best example because they weren't consistent in the placement of their icon, but it's essentially the same concept.
The "Preview trail" button has a blue hexagon in the upper right but it's not obvious what the icon means unless you tap on the button.
The "Download map" option (it doesn't look like a button) has a blue hexagon in the upper left, different from the "Preview trail" but it's the same icon and brings up the same trial sign up page.
And here's what happens when you tap on one of those buttons: