The goal of this website is to hold the symptoms and numbers that a brain just can't. Who can be expected to remember all the potential symptoms of the thousands of diseases that exist? Furthermore, it is equally impossible to memorize the utility of the tests designed to diagnose these diseases.

This site was designed and its data collected by a practicing Canadian internist/nephrologist. Data is from an adult population unless otherwise noted.

Details on Disease Symptom Database

This is an imperfect collection of disease symptoms. It was collected by a single reviewer and so mistakes will exist. When possible, sources that mentioned symptoms from primary case series were utilized.

There was some interpretation done of the primary literature. Sometimes, acuity was not mentioned and so an educated guess was made, based on clinical experience, on how the disease would be expected to present. Furthermore, some symptoms mentioned in references were not included when they were thought not to be causatively associated with the disease process. Attenmpts were made to present symptom frequencies as would be expected at presentation for any given disease. Therefore, some literature frequencies reported in the literature were sometimes reduced to account for expected prevalence at disease presentation. Chronic-type symptoms (ex: coronary artery disease) had their frequencies unchanged.

Details on Incidence Data Collection

Data for a general US population was perferred. Data from other locations was utilized when quality US data could not be found. When data was presented for multiple different time periods, the most recent time period was chosen. When only prevalences could be found, incidences were calculated by roughly estimating the average disease duration. Diseases with onset in childhood or early adulthood without incidence data but with birth frequency data had incidence data estimated by taking the average US birth rate and multiplying by the birth prevalence. When possible, age and sex adjusted incidences were reported. When epidemiologic data could not be found, an educated guess, based on personal clinical experience, was used to roughly estimate the incidence.

Details on Differential Diagnosis Generation

Results are arrange by estimated population incidence. To calculate this number, the root disease incidence (before any complications) is taken and then multipled by the estimated incidence of any complicating diseases and/or symptoms arising from the root disease. These additional probabilities are assumed to be independant. Very common and common symptoms/complicating diseases do not change the probability. Uncommon ones change the probability by 1/10 and rare ones change the probability by 1/100. If the incidence of a symptom or complicating disease has not yet been categorized, it is assumed have a frequency of 1/10. Diseases with rough estimates of > 1/1000 per 100,000,000 person-years have the incidences set to 5,000. Likewise, diseases with estimated incidence of < 1,000 have their incidence set to 10 and diseases whose incidence has yet to be categorized have their incidence set to 100. Incidences which were 0 in relatively small scale studies had their values set to 0.01 as these may technically still be possible.

Details on Diagnostic Utility Data Collection

The data here is biased. The entire literature was not culled, although meta-analyses, when found, were preferred over individual studies. Attempts were made to find the most recent studies and to include data from those that were strong. If a study did not report likelihood ratios specifically, these were calculated using the excel spreadsheet found here. If specificity or sensitivity was 100% in these studies (meaning one subgroup of the 2x2 table had zero patients), all cells had a value of 0.5 added to prevent a zero or infinite LR without a confidence interval. Confidence intervals are reported to reinforce the fact that an average value only represents a range of values that, in some cases, can vary over a very large range.


Please contact for suggestions and error reporting.