This paper provides a simple two-depositor, two-stage model to understand how a bank’s withdrawal history affects an individual’s decision about withdrawals, which could possibly trigger bank runs. Individual depositors have private information about their personal consumption types and receive noisy private signals about the quality of the bank’s portfolio. Depositors make publicly observable withdrawal decisions in sequence. Computed examples indicate that the optimal contract contingent on withdrawal histories can tolerate bank runs. These runs are triggered by unfavorable signals about a bank’s portfolio, and early liquidation of unsuccessful investments can avoid future losses. Because the signals are private, a depositor’s action is the only way to partially reveal his private information. A run- admitting bank contract allows information to be revealed. However, if signals are too noisy, bank runs may occur too often when fundamentals are strong. In this case, a bank would offer a run-proof contract. Given the relevant role of information, a policy that makes private information public would be useful to improve welfare and eliminate bank runs.