Discounting is a phenomenon in causal reasoning in which the presence of one cause casts doubt on another. We provide a survey of the descriptive and formal models that attempt to explain the discounting process and summarize what current models do not account for and where room for improvement exists. We propose a levels-of-analysis framework organized around 2 types of models of causal discounting: computational and algorithmic models. Theories of causal discounting at the computational level attempt to provide normative, prescriptive explanations for discounting behavior, and they build on other normative frameworks like formal logic and probability theory. However, they tend not to focus on how those computations are carried out. Theories of discounting at the algorithmic level focus on the functions and representations from which discounting behavior emerges (i.e., they examine how problems are solved). We use this framework to identify gaps in the current literature and avenues for future model development.