This appendix explains what was done for the research brief and what was not. It separates the literature review from the numerical illustration. No retailer was tested, no customer observations were collected and no private participant data were used.
Evidence selection and reading scope
The review was targeted at four questions: what pricing practices have been documented; how studies distinguish them; how information can change the division of economic gains; and what a buyer or public institution can reasonably conclude. It was not a preregistered systematic review. Selection emphasized primary government records, original empirical studies and economic theory, including evidence that challenges a simple all-harm or all-benefit conclusion.
The main source records were checked on October 9, 2026:
- FTC, 2025 interim surveillance-pricing staff perspective: introduction, methods, limits, tool categories, client count and input descriptions. Confidential underlying documents were not available. Its examples were not treated as observations of named transactions
- FTC, proposed 2026 enforcement policy: the official status page, proposed statement and deadline extension. Proposed status was retained. This was not a survey of every relevant state or national law
- Dubé and Misra, 2023: final article’s setting, experimental validation, welfare discussion and Table 8. The available replication README was inspected and identifies synthetic-data generation. The original customer data were not reanalyzed
- Hannák and colleagues, 2014: definitions, measurement controls, selected results and limitations. The study was not rerun, and historical findings were not presented as current prevalence
- European Commission-commissioned study, 2018: report methods, selected price/ranking results and conclusions, together with publication metadata. Neither the complete survey nor the underlying mystery-shopping observations were reanalyzed
- Bergemann, Brooks and Morris, 2015: the monopoly framework, constructive pooling example, assumptions and welfare bounds. The calculation below illustrates that established theory; it does not independently prove the general theorem
- Rhodes and Zhou, 2024: published abstract and the March 2024 author manuscript’s opening model discussion. Used for the conditional role of competition, not a newly checked proof of every proposition
- Acquisti, Taylor and Wagman, 2016: the author-hosted review’s pricing discussion and conclusions. Used to distinguish privacy preferences from the consequences of information sharing
- Shiller, 2025: the shared-price mechanism and discussion in the original article. Used as a theoretical limit on what simultaneous comparisons reveal, not as evidence of deployment
- Huang and Hooker, May 2026 preprint, version 1: group-fairness methods for insurance-pricing audits concerning equivalence, power and identification. Its proofs were not independently verified, and preprint status was preserved
Citations in the chapters identify the sources used for individual claims. Exact quotations were checked against their texts. The short self-quotation in Chapter 5 was checked against the existing New Prince of Hard Times chapter and excluded from new-original word credit. Earlier author work supplies voice and ideas, not empirical validation.
Synthetic market and accounting
The population has total mass one. Values are 2, 5 and 9, with weights 2/5, 2/5 and 1/5. Every person wants at most one unit. Baseline marginal cost is zero. A buyer accepts a price equal to their value. Segment membership is enforced. There is no resale, competition, data-acquisition cost, privacy cost, search cost, budget constraint or dynamic response.
For each segment, the program considers the prices at which a value type is present, plus the option not to sell. At each price it adds the weights of buyers whose values are at least that price. That is quantity. Revenue is price times quantity. Profit subtracts supply cost. Consumer surplus adds the difference between value and price for all purchasers. Total surplus is profit plus consumer surplus.
All results are expressed per potential buyer, including those who do not purchase. At positive cost, revenue and profit are separate. The code uses exact fractions for calculation and converts to decimals only for display. There is no sampled random dataset and therefore no estimated standard error or statistical confidence interval.
If several positive-profit prices tie, the baseline selects the lowest. A separate test selects the highest. If no price earns positive profit, the seller does not trade. That convention affects output at exactly zero net gain, without changing surplus.
The low-price pool contains unconditional masses 2/5, 8/45 and 4/45 of the three types. The residual contains zero, 2/9 and 1/9. Adding the two groups restores the original population exactly. The strict-incentive variant has masses 0.4, 0.16 and 0.08 in the first group, with the remainder in the second. These assignments are chosen examples, not estimated customer segments.
Sensitivity rather than a robustness slogan
The cost calculation tests eleven specified costs from zero to nine. It compares retaining the original grouping with redesigning it after the cost change. Those are different exercises. At cost 0.5, retaining the baseline grouping loses the low-price incentive; consumer surplus is 0.8. A cost-adapted grouping gives 1.4 while preserving uniform-price profit of 2.7. This does not show that a real organization can redesign without cost or error.
The signal calculation defines error precisely. With probability eta, the intended group label is replaced by a fresh label drawn from the original label frequencies. Population values and overall label frequencies remain unchanged. The seller knows the resulting distributions and reoptimizes prices.
| Noise η | Consumer surplus |
|---|---|
| 0 | 1.6 |
| Greater than 0 | 0.8 |
| Noise η | Consumer surplus |
|---|---|
| 0 | 1.52 |
| 1/9 (≈0.1111) | 1.568 |
| Greater than 1/9 | 0.8 |
| Noise η | Consumer surplus |
|---|---|
| All plotted values | 0.8 |
Between 0 and 1/9 inclusive, strict-pool consumer surplus is 1.52 + 0.432η. Low-price tie-breaking applies at the threshold. Dashed jumps mark price switches, not intermediate attainable outcomes. Plot range: η = 0 to 0.30. Synthetic inputs and specified label-replacement process only; units per potential buyer.
For the strict-incentive grouping below the threshold, consumer surplus is 1.52 plus 0.432 times eta. Profit is 3.08 minus 0.72 times eta. Output is one minus 0.144 times eta, and total surplus is 4.6 minus 0.288 times eta. The unusual increase in consumer surplus occurs because some higher-value buyers enter the discounted group while some low-value buyers leave it. Total surplus falls at the same time. The two measures answer different questions.
A final calculation subtracts a common outside-option utility of zero, one, two or three from each value. It reports gains relative to taking that outside option. The option is fixed and external to the model. This is not a model of competing firms and should not be used as one.
The original analysis therefore consists of a transparent example, its independent implementation and finite sensitivity calculations. Its contribution to the brief is explanatory. The theoretical mechanism and bounds are credited to existing literature. Figure 2 shows the broader BBM possibility set, which allows different optimal-price selections; not every point is attainable under our fixed lower-price tie convention. No claim of a newly discovered economic law, measured consumer loss or tested policy effectiveness is made.
Reproduction and limitations
The replication files contain the Python model, focused tests, input and output CSV files, exact-fraction JSON results and figure descriptions. Python’s standard library performs the calculations. Optional figure generation uses matplotlib. No random seed is required because randomized labels are represented by exact population masses.
Run the model with the no-charts option to reproduce the tables without plotting dependencies, then run the supplied unit tests. The checks cover the hand calculations, population recovery, accounting identities, price ties, strict incentives, cost adaptation and the chosen signal threshold. They check the implementation, not the truth of its assumptions about any real market.
The most important empirical gap remains: these sources do not jointly provide a representative estimate of the current prevalence or household cost of personalized pricing. Filling that gap requires an appropriate sample, accessible observations, valid comparisons and permission to use the data. A synthetic demonstration cannot fill it by being more elaborate.