Impact Calculator | GiveWell                   jQuery.extend(Drupal.settings, {"basePath":"\/","pathPrefix":"","ajaxPageState":{"theme":"gw_basic","theme_token":"ZrV3Qibsrex53nRbEIGl839_y9ozfcY0ivGD6uzdfCQ","js":{"0":1,"1":1,"sites\/all\/modules\/contrib\/eu-cookie-compliance\/js\/eu_cookie_compliance.js":1,"https:\/\/web.archive.org.\/web\/20210419153946\/https:\/\/unpkg.com\/@popperjs\/core@2":1,"https:\/\/web.archive.org.\/web\/20210419153946\/https:\/\/unpkg.com\/tippy.js@6":1,"sites\/all\/modules\/contrib\/jquery_update\/replace\/jquery\/1.10\/jquery.min.js":1,"misc\/jquery-extend-3.4.0.js":1,"misc\/jquery-html-prefilter-3.5.0-backport.js":1,"misc\/jquery.once.js":1,"misc\/drupal.js":1,"sites\/all\/modules\/contrib\/jquery_update\/replace\/ui\/ui\/minified\/jquery.ui.core.min.js":1,"sites\/all\/modules\/contrib\/jquery_update\/replace\/ui\/ui\/minified\/jquery.ui.widget.min.js":1,"sites\/all\/modules\/contrib\/eu-cookie-compliance\/js\/jquery.cookie-1.4.1.min.js":1,"sites\/all\/modules\/contrib\/jquery_update\/replace\/ui\/ui\/minified\/jquery.ui.accordion.min.js":1,"misc\/form.js":1,"sites\/all\/modules\/contrib\/resp_img\/resp_img.js":1,"sites\/all\/modules\/custom\/givewell_js\/js\/intercom.js":1,"sites\/all\/modules\/custom\/givewell_add_querystring\/js\/givewell_add_querystring.js":1,"sites\/all\/modules\/custom\/givewell_donation_block\/js\/givewell_impact_block.js":1,"sites\/all\/themes\/gw_basic\/scripts\/lib\/modernizr.custom.74085.js":1,"sites\/all\/themes\/gw_basic\/scripts\/lib\/mean-menu\/jquery.meanmenu.min.js":1,"sites\/all\/themes\/gw_basic\/scripts\/lib\/jquery-migrate-1.0.0.js":1,"sites\/all\/themes\/gw_basic\/scripts\/lib\/jquery-validation\/dist\/jquery.validate.min.js":1,"sites\/all\/themes\/gw_basic\/scripts\/lib\/multiselect\/jquery.multiselect.min.js":1,"sites\/all\/themes\/gw_basic\/scripts\/lib\/dropkick.js":1,"sites\/all\/themes\/gw_basic\/scripts\/lib\/jquery.pep.js":1,"sites\/all\/themes\/gw_basic\/scripts\/main.js":1},"css":{"modules\/system\/system.base.css":1,"modules\/system\/system.menus.css":1,"modules\/system\/system.messages.css":1,"modules\/system\/system.theme.css":1,"misc\/ui\/jquery.ui.core.css":1,"misc\/ui\/jquery.ui.theme.css":1,"misc\/ui\/jquery.ui.accordion.css":1,"modules\/aggregator\/aggregator.css":1,"modules\/comment\/comment.css":1,"modules\/field\/theme\/field.css":1,"sites\/all\/modules\/contrib\/footnotes\/footnotes.css":1,"modules\/node\/node.css":1,"modules\/search\/search.css":1,"modules\/user\/user.css":1,"sites\/all\/modules\/contrib\/views\/css\/views.css":1,"sites\/all\/modules\/contrib\/ckeditor\/css\/ckeditor.css":1,"sites\/all\/modules\/contrib\/ctools\/css\/ctools.css":1,"sites\/all\/modules\/contrib\/taxonomy_access\/taxonomy_access.css":1,"sites\/all\/modules\/contrib\/content_type_extras\/css\/content_type_extras.css":1,"sites\/all\/modules\/contrib\/print\/print_ui\/css\/print_ui.theme.css":1,"sites\/all\/modules\/contrib\/eu-cookie-compliance\/css\/eu_cookie_compliance.css":1,"sites\/all\/modules\/custom\/givewell_donation_block\/css\/givewell_impact_block.css":1,"public:\/\/ctools\/css\/b09064fb9231c08b0a5d7578b14af479.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/global\/normalize.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/global\/gw-fonts.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/global\/html.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/global\/global.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/global\/meanmenu.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/global\/page-layout.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/global\/html-colors.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/pages\/pages.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/pages\/new-home.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/pages\/new-top-charities.css":1,"sites\/all\/themes\/gw_basic\/styles\/sitesearch.css":1,"sites\/all\/themes\/gw_basic\/styles\/formstack.css":1,"sites\/all\/themes\/gw_basic\/styles\/custom.css":1,"sites\/all\/themes\/gw_basic\/styles\/eu_cookie_compliance.css":1,"sites\/all\/themes\/gw_basic\/styles\/css\/global\/admin.css":1}},"respImg":{"default_suffix":"","current_suffix":false,"forceRedirect":false,"forceResize":false,"reloadOnResize":false,"useDevicePixelRatio":false,"suffixes":{"":1}},"smart_ip":{"location":{"country_code":"US","country":"United States","region":"","region_code":"","city":"","zip":"","latitude":"","longitude":"","time_zone":"","is_eu_country":false,"continent":"NA","source":"smart_ip","ip_address":"34.239.150.57","timestamp":1618846786,"is_gdpr_country":false}},"smart_ip_src":{"smart_ip":"smart_ip","geocoded_smart_ip":"geocoded_smart_ip","w3c":"w3c"},"eu_cookie_compliance":{"cookie_policy_version":"1.0.0","popup_enabled":1,"popup_agreed_enabled":0,"popup_hide_agreed":0,"popup_clicking_confirmation":false,"popup_scrolling_confirmation":false,"popup_html_info":"\u003Cdiv class=\u0022eu-cookie-compliance-banner eu-cookie-compliance-banner-info eu-cookie-compliance-banner--opt-in\u0022\u003E\n \u003Cdiv class=\u0022popup-content info\u0022\u003E\n \u003Cdiv id=\u0022popup-text\u0022\u003E\n \u003Cp\u003EYou can control whether to accept certain types of cookies by clicking \u0022cookie settings.\u0022 By clicking \u201cAccept All Cookies\u201d, you agree to the storing and use of all cookies on your device for the site to function and to enhance site navigation, analyze site usage, and assist in our marketing efforts as described in the cookie section of our \u003Ca href=\u0022https:\/\/www.givewell.org\/about\/official-records\/privacy-policy\u0022 target=\u0022_blank\u0022 tabindex=\u00220\u0022\u003Eprivacy policy\u003C\/a\u003E.\u003C\/p\u003E \n\n \u003Cbutton type=\u0022button\u0022 class=\u0022find-more-button eu-cookie-compliance-more-button\u0022\u003ESee our cookie use policy.\u003C\/button\u003E\n \u003C\/div\u003E\n \n \u003Cdiv id=\u0022popup-buttons\u0022 class=\u0022\u0022\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022agree-button eu-cookie-compliance-secondary-button\u0022\u003EOK, I agree\u003C\/button\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022decline-button eu-cookie-compliance-default-button\u0022 \u003ENo, thanks\u003C\/button\u003E\n \u003C\/div\u003E\n \u003C\/div\u003E\n\u003C\/div\u003E","use_mobile_message":false,"mobile_popup_html_info":"\u003Cdiv class=\u0022eu-cookie-compliance-banner eu-cookie-compliance-banner-info eu-cookie-compliance-banner--opt-in\u0022\u003E\n \u003Cdiv class=\u0022popup-content info\u0022\u003E\n \u003Cdiv id=\u0022popup-text\u0022\u003E\n \u003Ch2\u003EWe use cookies on this site to enhance your user experience\u003C\/h2\u003E \u003Cp\u003EBy tapping the Accept button, you agree to us doing so.\u003C\/p\u003E \n\n \u003Cbutton type=\u0022button\u0022 class=\u0022find-more-button eu-cookie-compliance-more-button\u0022\u003ESee our cookie use policy.\u003C\/button\u003E\n \u003C\/div\u003E\n \n \u003Cdiv id=\u0022popup-buttons\u0022 class=\u0022\u0022\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022agree-button eu-cookie-compliance-secondary-button\u0022\u003EOK, I agree\u003C\/button\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022decline-button eu-cookie-compliance-default-button\u0022 \u003ENo, thanks\u003C\/button\u003E\n \u003C\/div\u003E\n \u003C\/div\u003E\n\u003C\/div\u003E\n","mobile_breakpoint":"768","popup_html_agreed":"\u003Cdiv\u003E\n \u003Cdiv class=\u0022popup-content agreed\u0022\u003E\n \u003Cdiv id=\u0022popup-text\u0022\u003E\n Thank you for accepting cookies\nYou can now hide this message or find out more about cookies. \u003C\/div\u003E\n \u003Cdiv id=\u0022popup-buttons\u0022\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022hide-popup-button eu-cookie-compliance-hide-button\u0022\u003EHide\u003C\/button\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022find-more-button eu-cookie-compliance-more-button-thank-you\u0022 \u003EMore info\u003C\/button\u003E\n \u003C\/div\u003E\n \u003C\/div\u003E\n\u003C\/div\u003E","popup_use_bare_css":false,"popup_height":"auto","popup_width":"100%","popup_delay":1000,"popup_link":"https:\/\/web.archive.org.\/web\/20210419153946\/https:\/\/www.givewell.org\/about\/official-records\/privacy-policy","popup_link_new_window":1,"popup_position":null,"fixed_top_position":1,"popup_language":"en","store_consent":false,"better_support_for_screen_readers":0,"reload_page":0,"domain":"givewell.org","domain_all_sites":1,"popup_eu_only_js":1,"cookie_lifetime":"365","cookie_session":false,"disagree_do_not_show_popup":0,"method":"opt_in","allowed_cookies":"cluid\r\n_jsuid\r\n_gaexp\r\n_first_pageview\r\nS\r\nx-cdn","withdraw_markup":"\u003Cbutton type=\u0022button\u0022 class=\u0022eu-cookie-withdraw-tab\u0022\u003EPrivacy settings\u003C\/button\u003E\n\u003Cdiv class=\u0022eu-cookie-withdraw-banner\u0022\u003E\n \u003Cdiv class=\u0022popup-content info\u0022\u003E\n \u003Cdiv id=\u0022popup-text\u0022\u003E\n \u003Cp\u003EYou can control whether to accept certain types of cookies by clicking \u0022cookie settings.\u0022 By clicking \u201cAccept All Cookies\u201d, you agree to the storing and use of all cookies on your device for the site to function and to enhance site navigation, analyze site usage, and assist in our marketing efforts as described in the cookie section of our \u003Ca href=\u0022https:\/\/www.givewell.org\/about\/official-records\/privacy-policy\u0022 target=\u0022_blank\u0022 tabindex=\u00220\u0022\u003Eprivacy policy\u003C\/a\u003E.\u003C\/p\u003E \n\n \u003C\/div\u003E\n \u003Cdiv id=\u0022popup-buttons\u0022\u003E\n \u003Cbutton type=\u0022button\u0022 class=\u0022eu-cookie-withdraw-button\u0022\u003EWithdraw consent\u003C\/button\u003E\n \u003C\/div\u003E\n \u003C\/div\u003E\n\u003C\/div\u003E\n","withdraw_enabled":1,"withdraw_button_on_info_popup":0,"cookie_categories":[],"cookie_categories_details":[],"enable_save_preferences_button":1,"cookie_name":"complianz_consent_status","cookie_value_disagreed":"deny","cookie_value_agreed_show_thank_you":"allow","cookie_value_agreed":"allow","containing_element":"body","automatic_cookies_removal":1},"urlIsAjaxTrusted":{"\/impact-calculator":true},"givewell_donation_block":{"monthlyFrequency":"9swm"}});       Jump to Navigation          GiveWell        Giving EffectivelyGiving 101 Your Donation Can Change Someone's Life The Wrong Donation Can Accomplish Nothing Your Dollar Goes Further Overseas Your Dollar Goes Further When You Fund the Right Program Impact Calculator Quick Start Guide  How We WorkWho We Are Process Criteria Transparency Evaluations of GiveWell Research FAQ Core Competencies  Top CharitiesMaximum Impact Fund Malaria Consortium Against Malaria Foundation Helen Keller International SCI Foundation Sightsavers New Incentives Deworm the World Initiative The END Fund GiveDirectly Standout Charities  ResearchCharity Site Visits Notes from Research Conversations Research on Programs Cost-Effectiveness Analyses Other Charity Reviews GiveWell Incubation Grants  Our Mistakes AboutOur Story Our People Impact Values Reputation Information About Donating Frequently Asked Questions Official Records Jobs Contact Us  UpdatesStay Updated Blog RSS Feeds           Enter search terms here.   This search returns results from both GiveWell's main site and from the GiveWell Blog. 

  Search form  Search             DonateDonate

            You are hereHome » Giving Effectively » Giving 101 » Impact Calculator Impact Calculator                    Calculate your donation’s impact.Calculate yourdonation’s impact.  Last updated April 7, 2021$ Donation amount     Frequency    Monthly     One-Time      Charity    Choose a charity     Maximum Impact FundGrants to top charities (most popular choice)     Malaria ConsortiumMedicine to prevent malaria     Against Malaria FoundationNets to prevent malaria     Helen Keller InternationalSupplements to prevent vitamin A deficiency     New IncentivesIncentives for routine childhood immunizations     SCI FoundationTreatments for parasitic worm infections     Evidence ActionTreatments for parasitic worm infections     SightsaversTreatments for parasitic worm infections     The END FundTreatments for parasitic worm infections     GiveDirectlyCash transfers for extreme poverty     ▼ Why these 9 charities?

   Our Top Recommendation: The Maximum Impact Fund  Photo credit: Malaria Consortium/Sophie Garcia          If you'd like your donation to do the most good, consider giving to our Maximum Impact Fund. GiveWell takes no fees and uses our most up-to-date research to grant your gift to the charities where donations will help the most. 

 Find out more about the Maximum Impact Fund.   Why these 9 charities?

   Your estimated impact in one year

 How is this calculated?

   Total donated0 Nets provided*0 Approximate number of lives saved* Cost to save a life with this program*0  * Based on last quarter’s grants to the Against Malaria Foundation. Future grants may differ. See our granting history.  MAXIMUM IMPACT FUND OVERVIEW This is the best fit for donors who want to maximize their impact. We take zero fees and use our most up-to-date research to grant your gift where it will help the most.

 We typically grant this pool of funds to one or more of our recommended charities each quarter. Once we grant your donation, we’ll email you to let you know which charity or charities we selected and what we expect your donation will accomplish.

 Find out more about the Maximum Impact Fund. Learn more about how these results are calculated here.   Why these 9 charities?

   Your estimated impact in one year

 How is this calculated?

   Total donated0 Children given anti-malarial medicine 0 Approximate number of lives saved Cost to save a life with this program0   MALARIA CONSORTIUM (SEASONAL MALARIA CHEMOPREVENTION PROGRAM) OVERVIEW Malaria kills over 400,000 people annually, mostly children under 5 in sub-Saharan Africa.(1) Seasonal malaria chemoprevention is preventive medicine that saves children’s lives. It is given during the four months of the year when malaria infection rates are especially high.

 Find out more about the Malaria Consortium’s seasonal malaria chemoprevention program. Learn more about how these results are calculated here.   Why these 9 charities?

   Your estimated impact in one year

 How is this calculated?

   Total donated0 Nets provided0 Approximate number of lives saved Cost to save a life with this program0   AGAINST MALARIA FOUNDATION OVERVIEW Malaria kills over 400,000 people annually, mostly children under 5 in sub-Saharan Africa.(2) Nets save lives. Participants hang the nets and sleep under them so they are not bitten by malaria-carrying mosquitoes.

 Find out more about the Against Malaria Foundation. Learn more about how these results are calculated here.   Why these 9 charities?

   Your estimated impact in one year

 How is this calculated?

   Total donated0 Supplements delivered0 Approximate number of lives saved Cost to save a life with this program0   HELEN KELLER INTERNATIONAL'S VITAMIN A SUPPLEMENTATION PROGRAM OVERVIEW Vitamin A deficiency leaves children vulnerable to infections and can lead to death. We attribute  over 200,000 children's deaths to vitamin A deficiency each year.(3) This program saves lives by providing vitamin A supplements to children under 5 years old.

 Find out more about Helen Keller International’s vitamin A supplementation program. Learn more about how these results are calculated here.   Why these 9 charities?

   Your estimated impact in one year How is this calculated?

   Total donated0 Number of caregivers provided incentives to complete a baby’s immunization schedule0 Approximate number of lives saved Cost to save a life with this program0   NEW INCENTIVES OVERVIEW In Nigeria, 43% of infants did not receive all recommended childhood vaccines in 2019.(4) This program provides cash transfers to incentivize caregivers to bring babies to clinics for routine childhood vaccinations. It operates in North West Nigeria

 Find out more about New Incentives. Learn more about how these results are calculated here.  Why these 9 charities?

   Your estimated impact in one year How is this calculated?

   Total donated0 Children treated0 Approximate increase to this group’s lifetime earnings   SCI FOUNDATION OVERVIEW Hundreds of millions of people around the world are infected with parasitic worms.(5) This program provides children with medication that clears parasitic infections and may lead to a large increase in lifetime earnings. We recommend the program based on its small potential for a large impact on earnings.

 Find out more about the SCI Foundation. Learn more about how these results are calculated here.  Why these 9 charities?

   Your estimated impact in one year How is this calculated?

   Total donated0 Children treated0 Approximate increase to this group’s lifetime earnings   EVIDENCE ACTION'S DEWORM THE WORLD INITIATIVE OVERVIEW Hundreds of millions of people around the world are infected with parasitic worms.(6) This program provides children with medication that clears parasitic infections and may lead to a large increase in lifetime earnings. We recommend the program based on its small potential for a large impact on earnings.

 Find out more about Evidence Action's Deworm the World Initiative.. Learn more about how these results are calculated here.  Why these 9 charities?

   Your estimated impact in one year How is this calculated?

   Total donated0 Children treated0 Approximate increase to this group’s lifetime earnings   SIGHTSAVERS' DEWORMING PROGRAM OVERVIEW Hundreds of millions of people around the world are infected with parasitic worms.(7) This program provides children with medication that clears parasitic infections and may lead to a large increase in lifetime earnings. We recommend the program based on its small potential for a large impact on earnings.

 Find out more about the SightSavers' deworming program. Learn more about how these results are calculated here.  Why these 9 charities?

   Your estimated impact in one year How is this calculated?

   Total donated0 Children treated0 Approximate increase to this group’s lifetime earnings   THE END FUND'S DEWORMING PROGRAM OVERVIEW Hundreds of millions of people around the world are infected with parasitic worms.(8) This program provides children with medication that clears parasitic infections and may lead to a large increase in lifetime earnings. We recommend the program based on its small potential for a large impact on earnings.

 Find out more about the END Fund’s deworming program. Learn more about how these results are calculated here.  Why these 9 charities?

   Your estimated impact in one year How is this calculated?

   Total donated0 Cash transferred0   GiveDirectly Overview The majority of people in the world live on less than $3,700 per year.(9) This program gives cash to very poor families, mostly in Africa, to spend as they like. Many participants make investments in business and agricultural assets, housing, and education.

 Find out more about GiveDirectly. Learn more about how these results are calculated here.  "use strict"; var form = document.getElementById("givewell-donation-block-impact-form"); if (form) { form.reset(); } document.getElementById("edit-charities").addEventListener("input", function (e) { var form = document.getElementById("givewell-donation-block-impact-form"); var size = document.getElementsByName("size")[0]; function changeInput(e){ // Set up variables. var livesLowerEstimate = ""; var livesUpperEstimate = ""; var donationsLowerEstimate = ""; var donationsUpperEstimate = ""; var frequency = document.querySelector("input[name=frequency]:checked"); if (frequency.value ==="9swm" && size.value > 0) { var amount = parseFloat(size.value*12); } else { var amount = parseFloat(size.value); }var card = document.getElementsByClassName("default")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Set the total. .toLocaleString('en') adds the thousands separator as a comma. .toLocaleString(); adds the thousands separators as required by the user's browser locale. // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Don't let the treatments fall below 1. if (amount/4.49 < 1 && amount > 0) { treatments.value = 1; } else { treatments.value = Math.floor(amount/4.49).toLocaleString(); } // Set the upper and lower estimates for lives saved and additional donations needed. livesLowerEstimate = Math.floor(amount/5000).toLocaleString(); livesUpperEstimate = Math.floor(amount/3000).toLocaleString(); donationsLowerEstimate = Math.ceil(3000/amount).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/amount).toLocaleString(); // Create display of ranges. if(amount >=5000 && livesLowerEstimate === livesUpperEstimate) { lives.value = livesLowerEstimate; } if(amount >=5000 && livesLowerEstimate !== livesUpperEstimate) { lives.value = livesLowerEstimate + '-' + livesUpperEstimate; } if(amount < 5000 && donationsLowerEstimate === donationsUpperEstimate) { donations.value = donationsLowerEstimate; } if(amount < 5000 && donationsLowerEstimate !== donationsUpperEstimate) { donations.value = donationsLowerEstimate + '-' + donationsUpperEstimate; }}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y0000026SUG")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Don't let the treatments fall below 1. if (amount/4.95 < 1 && amount > 0) { treatments.value = 0; } else { treatments.value = Math.floor(amount/4.95).toLocaleString(); } // Set the upper and lower estimates for lives saved and additional donations needed. livesLowerEstimate = Math.floor(amount/5000).toLocaleString(); livesUpperEstimate = Math.floor(amount/3000).toLocaleString(); donationsLowerEstimate = Math.ceil(3000/amount).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/amount).toLocaleString(); // Create display of ranges. if(amount >=5000 && livesLowerEstimate === livesUpperEstimate) { lives.value = livesLowerEstimate; } if(amount >=5000 && livesLowerEstimate !== livesUpperEstimate) { lives.value = livesLowerEstimate + '-' + livesUpperEstimate; } // if(amount < 5000 && donationsLowerEstimate === donationsUpperEstimate) { donations.value = donationsLowerEstimate; } // if(amount < 5000 && donationsLowerEstimate !== donationsUpperEstimate) { donations.value = donationsLowerEstimate + '-' + donationsUpperEstimate; } if(amount < 5000) { donationsLowerEstimate = Math.ceil(3000/1).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/1).toLocaleString(); } donations.value = '$'+donationsLowerEstimate + ' - $' + donationsUpperEstimate;}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y0000026SUB")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Don't let the treatments fall below 1. if (amount/6.59 < 1 && amount > 0) { treatments.value = 0; } else { treatments.value = Math.floor(amount/6.59).toLocaleString(); } // Set the upper and lower estimates for lives saved and additional donations needed. livesLowerEstimate = Math.floor(amount/5000).toLocaleString(); livesUpperEstimate = Math.floor(amount/3000).toLocaleString(); donationsLowerEstimate = Math.ceil(3000/amount).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/amount).toLocaleString(); // Create display of ranges. if(amount >=5000 && livesLowerEstimate === livesUpperEstimate) { lives.value = livesLowerEstimate; } if(amount >=5000 && livesLowerEstimate !== livesUpperEstimate) { lives.value = livesLowerEstimate + '-' + livesUpperEstimate; } // if(amount < 5000 && donationsLowerEstimate === donationsUpperEstimate) { donations.value = donationsLowerEstimate; } // if(amount < 5000 && donationsLowerEstimate !== donationsUpperEstimate) { donations.value = donationsLowerEstimate + '-' + donationsUpperEstimate; } if(amount < 5000) { donationsLowerEstimate = Math.ceil(3000/1).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/1).toLocaleString(); } donations.value = '$'+donationsLowerEstimate + ' - $' + donationsUpperEstimate;}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y0000026SUQ")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Don't let the treatments fall below 1. if (amount/4.95 < 1 && amount > 0) { treatments.value = 0; } else { treatments.value = Math.floor(amount/4.95).toLocaleString(); } // Set the upper and lower estimates for lives saved and additional donations needed. livesLowerEstimate = Math.floor(amount/5000).toLocaleString(); livesUpperEstimate = Math.floor(amount/3000).toLocaleString(); donationsLowerEstimate = Math.ceil(3000/amount).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/amount).toLocaleString(); // Create display of ranges. if(amount >=5000 && livesLowerEstimate === livesUpperEstimate) { lives.value = livesLowerEstimate; } if(amount >=5000 && livesLowerEstimate !== livesUpperEstimate) { lives.value = livesLowerEstimate + '-' + livesUpperEstimate; } // if(amount < 5000 && donationsLowerEstimate === donationsUpperEstimate) { donations.value = donationsLowerEstimate; } // if(amount < 5000 && donationsLowerEstimate !== donationsUpperEstimate) { donations.value = donationsLowerEstimate + '-' + donationsUpperEstimate; } if(amount < 5000) { donationsLowerEstimate = Math.ceil(3000/1).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/1).toLocaleString(); } donations.value = '$'+donationsLowerEstimate + ' - $' + donationsUpperEstimate;}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y0000026SUa")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Set the total. .toLocaleString('en') adds the thousands separator as a comma. .toLocaleString(); adds the thousands separators as required by the user's browser locale. // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Don't let the treatments fall below 1. if (amount/1.10 < 1 && amount > 0) { treatments.value = 0; } else { treatments.value = Math.floor(amount/1.10).toLocaleString(); } livesLowerEstimate = Math.floor(amount/5000).toLocaleString(); livesUpperEstimate = Math.floor(amount/3000).toLocaleString(); donationsLowerEstimate = Math.ceil(3000/amount).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/amount).toLocaleString(); // Create display of ranges. if(amount >=5000 && livesLowerEstimate === livesUpperEstimate) { lives.value = livesLowerEstimate; } if(amount >=5000 && livesLowerEstimate !== livesUpperEstimate) { lives.value = livesLowerEstimate + '-' + livesUpperEstimate; } // if(amount < 5000 && donationsLowerEstimate === donationsUpperEstimate) { donations.value = donationsLowerEstimate; } // if(amount < 5000 && donationsLowerEstimate !== donationsUpperEstimate) { donations.value = donationsLowerEstimate + '-' + donationsUpperEstimate; } if(amount < 5000) { donationsLowerEstimate = Math.ceil(3000/1).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/1).toLocaleString(); } donations.value = '$'+donationsLowerEstimate + ' - $' + donationsUpperEstimate;}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y000002JGe0")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Don't let the treatments fall below 1. if (amount/47 < 1 && amount > 0) { treatments.value = 0; } else { treatments.value = Math.floor(amount/47).toLocaleString(); } // Set the upper and lower estimates for lives saved and additional donations needed. livesLowerEstimate = Math.floor(amount/5000).toLocaleString(); livesUpperEstimate = Math.floor(amount/3000).toLocaleString(); donationsLowerEstimate = Math.ceil(3000/amount).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/amount).toLocaleString(); // Create display of ranges. if(amount >=5000 && livesLowerEstimate === livesUpperEstimate) { lives.value = livesLowerEstimate; } if(amount >=5000 && livesLowerEstimate !== livesUpperEstimate) { lives.value = livesLowerEstimate + '-' + livesUpperEstimate; } // if(amount < 5000 && donationsLowerEstimate === donationsUpperEstimate) { donations.value = donationsLowerEstimate; } // if(amount < 5000 && donationsLowerEstimate !== donationsUpperEstimate) { donations.value = donationsLowerEstimate + '-' + donationsUpperEstimate; } if(amount < 5000) { donationsLowerEstimate = Math.ceil(3000/1).toLocaleString(); donationsUpperEstimate = Math.ceil(5000/1).toLocaleString(); } donations.value = '$'+donationsLowerEstimate + ' - $' + donationsUpperEstimate;}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y0000026SUf")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Set the total. .toLocaleString('en') adds the thousands separator as a comma. .toLocaleString(); adds the thousands separators as required by the user's browser locale. // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Set the number of treatments. if (amount/0.97 < 1 && amount > 0) { treatments.value = 0; } else { treatments.value = Math.floor(amount/0.97).toLocaleString(); } // Set the earnings benefit. financials.value = '$' + Math.floor(amount*11).toLocaleString();}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y0000026SUL")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Set the total. .toLocaleString('en') adds the thousands separator as a comma. .toLocaleString(); adds the thousands separators as required by the user's browser locale. // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Set the number of treatments. if (amount/0.97 < 1 && amount > 0) { treatments.value = 0; } else { treatments.value = Math.floor(amount/0.97).toLocaleString(); } // Set the earnings benefit. financials.value = '$' + Math.floor(amount*11).toLocaleString();}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y0000026SUk")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Set the total. .toLocaleString('en') adds the thousands separator as a comma. .toLocaleString(); adds the thousands separators as required by the user's browser locale. // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Set the number of treatments. if (amount/0.97 < 1 && amount > 0) { treatments.value = 0; } else { treatments.value = Math.floor(amount/0.97).toLocaleString(); } // Set the earnings benefit. financials.value = '$' + Math.floor(amount*11).toLocaleString();}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y0000026SUp")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // Set the number of treatments. if (amount/0.97 < 1 && amount > 0) { treatments.value = 0; } else { treatments.value = Math.floor(amount/0.97).toLocaleString(); } // Set the earnings benefit. financials.value = '$' + Math.floor(amount*11).toLocaleString();}; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } var card = document.getElementsByClassName("a2b1Y0000026SVi")[0]; if(card) { var total=card.querySelector("output[for=total]"); var treatments=card.querySelector("output[for=treatments]"); var financials=card.querySelector("output[for=financials]"); var lives=card.querySelector("output[for=lives]"); var donations=card.querySelector("output[for=donations]")}; if(lives) {lives.value = "";} if(donations) {donations.value = "";} if(total) { // Set the total. .toLocaleString('en') adds the thousands separator as a comma. .toLocaleString(); adds the thousands separators as required by the user's browser locale. // Do not apply .toLocaleString() direct to the amount variable as it would change the variable which we need for later use, and cause a bug. var formattedAmount = parseFloat(amount).toLocaleString(); total.value = '$' + formattedAmount; // For GiveDirectly the measure is cash to recipients. financials.value = '$' + Math.floor(amount*0.83).toLocaleString(); }; if(total && total.value.includes("NaN")) { total.value = "N\/A"; } if(total && lives && total.value.length == 0) { lives.value = "N\/A"; } if(total && donations && total.value.length == 0) { donations.value = "N\/A"; } if(treatments && treatments.value.includes("NaN")) { treatments.value = "N\/A"; } if(financials && financials.value.includes("NaN")) { financials.value = "N\/A"; } if(lives && lives.value.includes("NaN")) { lives.value = "N\/A"; } if(donations && (donations.value.includes("∞") || donations.value.includes("NaN") || donations.value <=0)) { donations.value = "N\/A"; } // Toggle visibility of lives saved and similar donations needed. if(parseFloat(livesLowerEstimate) >= 1) { var livesClasses = document.querySelectorAll(".lives"), i = 0, l = livesClasses.length; for (i; i < l; i++) { livesClasses[i].style.display = "block"; } var donationsClasses = document.querySelectorAll(".donations"), j = 0, m= donationsClasses.length; for (j; j < m; j++) { donationsClasses[j].style.display = "none"; } } else { var livesClasses = document.querySelectorAll(".lives"), i = 0, l = livesClasses.length; for (i; i < l; i++) { livesClasses[i].style.display = "none"; } var donationsClasses = document.querySelectorAll(".donations"), j = 0, m= donationsClasses.length; for (j; j < m; j++) { donationsClasses[j].style.display = "block"; } } } size.onkeyup = changeInput; form.onchange = changeInput; form.onload = changeInput; document.change = changeInput; });to the Maximum Impact Fundto the Malaria Consortiumto the Against Malaria Foundationto Helen Keller Internationalto New Incentivesto the SCI Foundationto Evidence Actionto SightSaversto the END Fundto GiveDirectly        GET THE LATEST NEWS ON EFFECTIVE CHARITIES Join our email newsletter for updates on our research and giving opportunities.

               Contact Stay updated FAQ For Charities Site map Privacy Policy Jobs       Follow Us: Facebook Twitter RSS   Subscribe to email updates:  GiveWell, aka The Clear Fund (a tax-exempt 501(c)(3) public charity), was founded in 2007. We serve donors across the Globe; GiveWell's donors are based primarily in the United States, United Kingdom, Australia, Germany, and Canada. This work is licensed under a Creative Commons Attribution-Noncommercial-Share alike 3.0 United States License              try { clicky.init(78566); }catch(e){} 

  window.euCookieComplianceLoadScripts = function(category) {var scriptTag = document.createElement("script");scriptTag.src = "https:\/\/web.archive.org.\/web\/20210419153946\/https:\/\/www.givewell.org\/sites\/default\/files\/google_tag\/google_tag.script.js";document.body.appendChild(scriptTag);} window.eu_cookie_compliance_cookie_name = "complianz_consent_status";     window.intercomSettings = { "app_id": "you5eu27" };   (function($) { $(document).ready(function() { // const tippy = require('tippy.js').default; tippy('.tippy', { content: '[data-tippy-content]', followCursor: "true", placement: "bottom", }); }); window.addEventListener('scroll', () => { tippy.hideAll() }) })(jQuery);