Of course, in real life the "law" isn't absolute. It needs to be adjusted for factors like how easy it is to find prices from competitors and buy elsewhere. In addition, stores have sales, and offer coupons or membership programs, and thus act in ways that even those who buy from the same store during the same day can face different prices for the same product. From the point of view of the seller, the strategy goes like this: Find a way to offer special deals to attract the bargain-hunters who are highly motivated to find the lowest price, but in addition, find ways to charge a higher "regular" price to shoppers who are not as highly motivated to find the lowest price. Greg Kaplan provides an overview of research on this topic in "Price Dispersion and Bargain Hunting in the Macroeconomy," which appears in the NBER Reporter (2017 Number 2).
As an example of a common pattern, here's data from one study on the price paid for a 36-ounce bottle of Heinz ketchup in stores in Minneapolis in January 2007. The underlying data comes from the "KiltsNielsen Consumer Panel (KNCP) data set, which contains price and quantity information for more than 300 million transactions by 50,000 households for over 1.4 million goods in 54 geographic markets during the period 2004–9."
As a rough estimate, for the typical good in this study about two-thirds of transactions have an observed price within 20% of the average price (either above or below), which means that the remaining one-third of transactions have a price more than 20% away from the average.
Why are some patterns of this price dispersion? Perhaps surprisingly, the main reason for different prices isn't because of drastically different kinds of stores, like shopping in a large chain grocery story vs. shopping at a mini-mart attached to a gas station. Kaplan explains:
"However, perhaps surprisingly, only a small fraction of this [price] dispersion arises because some stores are more expensive than other stores. We can infer this because our scanner data allows us to observe the same store selling lots of different goods, the same good sold at lots of different stores, and the same good being sold at the same store in many different transactions. Most of the observed dispersion in prices actually takes place within stores. About half is due to a transaction component that captures both temporal variation in the price of a good at a given store due to temporary sales and other price changes and the fact that not all customers pay the same price for the same good on the same day because, for example, some use coupons or loyalty cards. The other half is due to persistent differences in the prices charged for a given product across stores that are equally expensive on average."What are some implications of living in the real world, where the law of one price applies only approximately, and stores are seeking ways to offer different prices to different kinds of shoppers?
It turns out that prices paid for goods declines with age, with those aged 55-and-older paying prices that are on average about 3-4% lower than 25 year-olds. An obvious reason is that retirees have more flexibility and knowledge about times and places and ways to shop. Those who shop more frequently, or who visit more stores on a given shopping trip,or who are more likely to use coupons, also pay lower prices. Indeed, your personal experience of the extent to which inflation is happening in food prices will be strongly affected by whether you are a bargain-hunter, and thus more likely to get lower prices, or whether you are paying the regular prices. In groceries, as in other consumer purchases, careful shopping can save money without altering the quality of what is purchased.