You could just never change your pricing, but you’ll almost certainly be leaving significant money on the table as you’re highly unlikely to get it right on the first try. It could even kill your business, since the right product with the wrong pricing can be as much of a non-starter as the wrong product. Iterating on price can be as important as iterating on the product.
- Annual plans that include a discount vs paying month to month.
- Introductory pricing (and how long that lasts)
- Promo codes
- Dealing with multiple currencies
- Pricing on iOS, where you have to pick on of their "pricing tiers"The real complexity comes from when you need to make changes to your pricing and have to manage grandparenting, upsells, etc.
Another vector of complexity comes from the need to make different pricing and packaging offers for different markets, geographies, etc.
You can have a very simple pricing model, but that doesn't mean that there isn't complexity that emerges pretty quickly.
We were running into problems when we had large test baskets ( $500 always, $200 sometimes ) that there would be so many combinations of specials that calculating the best way to apply them was causing CPU load and timeouts.
Fix was somebody sat down, remembered their CS classes and applied a more scalable algorithm. Problem fixed.