{"id":61085,"date":"2026-05-01T12:05:29","date_gmt":"2026-05-01T16:05:29","guid":{"rendered":"https:\/\/www.assur360.ca\/assur360-simulators-free-tools-for-your-financial-decisions\/cqff-curves-formerly-claude-laferriere-temi-2025-calculator\/"},"modified":"2026-06-26T03:42:31","modified_gmt":"2026-06-26T07:42:31","slug":"true-tax-rate-quebec-temi-calculator","status":"publish","type":"page","link":"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/true-tax-rate-quebec-temi-calculator\/","title":{"rendered":"True Tax Rate in Quebec \u2014 TEMI 2025 Calculator"},"content":{"rendered":"\n<style>#ez-toc-container{display:none!important}<\/style>\n&#8220;`html\n\n<style>.temi-hero{background:linear-gradient(135deg,#0d1f2d,#1a3a4a);color:#fff;padding:64px 32px}\n.temi-hero .biv-wrap{max-width:1100px;margin:0 auto}\n.temi-hero .breadcrumb{font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.05em;color:#10c4c7;margin-bottom:14px}\n.temi-hero .breadcrumb a{color:#10c4c7;text-decoration:none;border-bottom:1px dotted}\n.temi-hero .eyebrow{font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:#10c4c7;margin-bottom:8px;display:block}\n.temi-hero h1{font-family:'Sora','DM Sans',sans-serif;font-size:46px;line-height:1.1;font-weight:700;margin:0 0 14px;color:#fff}\n.temi-hero h1 em{font-style:normal;color:#10c4c7}\n.temi-hero .lede{font-family:'DM Sans',sans-serif;font-size:19px;line-height:1.55;color:#cbd5e1;max-width:760px;margin:0}\n.temi-section{max-width:1100px;margin:48px auto;padding:0 24px}\n.temi-section h2{font-family:'Sora',sans-serif;font-weight:700;font-size:30px;color:#0d1f2d;margin:48px 0 12px;letter-spacing:-.5px}\n.temi-section h3{font-family:'Sora',sans-serif;font-weight:600;font-size:20px;color:#10c4c7;margin:24px 0 8px}\n.temi-section p{font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.7;color:#0d1f2d;margin:0 0 14px}\n.temi-section ul{margin:0 0 16px;padding-left:22px}\n.temi-section li{font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6;color:#0d1f2d;margin-bottom:8px}\n\n.temi-3rates{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:24px 0 8px}\n.temi-3rate{padding:24px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;border-top:4px solid #10c4c7}\n.temi-3rate .label{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#64748b;font-weight:700;margin-bottom:8px}\n.temi-3rate h4{font-family:'Sora',sans-serif;font-size:18px;color:#0d1f2d;margin:0 0 8px;font-weight:600}\n.temi-3rate p{font-size:14px;color:#475569;margin:0;line-height:1.55}\n.temi-3rate.focus{border-top-color:#0d1f2d;background:#0d1f2d;color:#fff}\n.temi-3rate.focus h4,.temi-3rate.focus p,.temi-3rate.focus .label{color:#fff}\n.temi-3rate.focus .label{color:#10c4c7}\n\n.temi-calc{background:#f8fafc;padding:32px;border-radius:12px;border:1px solid #e5e7eb;margin:32px 0}\n.temi-meta{font-family:'DM Sans',sans-serif;font-size:12px;color:#64748b;margin-bottom:18px;letter-spacing:.05em}\n.temi-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:24px}\n.temi-field{display:flex;flex-direction:column}\n.temi-field label{font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:#0d1f2d;margin-bottom:6px}\n.temi-field input[type=range]{width:100%;accent-color:#10c4c7}\n.temi-field select,.temi-field input[type=number]{padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-family:'DM Sans',sans-serif;font-size:15px;color:#0d1f2d;background:#fff}\n.temi-field-out{font-family:'Sora',sans-serif;font-size:18px;font-weight:600;color:#10c4c7}\n\n.temi-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:18px}\n.temi-stat{background:#fff;padding:18px 22px;border-radius:10px;border:1px solid #e5e7eb;text-align:center}\n.temi-stat .label{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#64748b;margin-bottom:4px;font-weight:600}\n.temi-stat .value{font-family:'Sora',sans-serif;font-size:32px;font-weight:700;line-height:1;color:#0d1f2d}\n.temi-stat.--main{background:#0d1f2d;border-color:#0d1f2d;color:#fff}\n.temi-stat.--main .label{color:#10c4c7}\n.temi-stat.--main .value{color:#10c4c7;font-size:38px}\n.temi-stat .note{font-family:'DM Sans',sans-serif;font-size:11px;color:#64748b;margin-top:6px;line-height:1.4}\n.temi-stat.--main .note{color:#cbd5e1}\n\n.temi-results-money{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 24px}\n.temi-stat.--keep .value{color:#10c4c7}\n.temi-stat.--lose .value{color:#ef4444}\n\n.temi-bar{display:flex;height:18px;border-radius:99px;overflow:hidden;background:#e5e7eb;margin:18px 0 14px}\n.temi-rows{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:6px 20px}\n.temi-row{display:flex;align-items:center;gap:8px;font-family:'DM Sans',sans-serif;font-size:13px}\n.temi-row .temi-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:0 0 10px}\n.temi-row-name{flex:1;color:#0d1f2d}\n.temi-row-val{color:#0d1f2d;font-weight:600}\n\n.temi-disclaimer{background:#fef3c7;border:1px solid #fbbf24;padding:18px 20px;border-radius:8px;margin:24px 0}\n.temi-disclaimer h4{font-family:'Sora',sans-serif;font-size:15px;color:#92400e;margin:0 0 8px;font-weight:700}\n.temi-disclaimer p{font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.6;color:#78350f;margin:0 0 6px}\n.temi-disclaimer ul{margin:6px 0;padding-left:22px;color:#78350f}\n.temi-disclaimer li{font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.55;color:#78350f;margin-bottom:4px}\n.temi-disclaimer strong{color:#78350f}\n\n.temi-officiels{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin:24px 0}\n.temi-officiel{padding:20px 22px;background:#fff;border:1px solid #e5e7eb;border-left:4px solid #10c4c7;border-radius:8px}\n.temi-officiel .org{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#10c4c7;font-weight:700;margin-bottom:4px}\n.temi-officiel h4{font-family:'Sora',sans-serif;font-size:16px;color:#0d1f2d;margin:0 0 8px}\n.temi-officiel p{font-size:13px;line-height:1.55;color:#475569;margin:0 0 10px}\n.temi-officiel a{font-family:'DM Sans',sans-serif;font-size:13px;color:#0d1f2d;text-decoration:none;font-weight:600;border-bottom:1px solid #10c4c7}\n\n.temi-tips{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:24px 0}\n.temi-tip{padding:18px 22px;background:#f0fdfa;border-left:4px solid #10c4c7;border-radius:6px}\n.temi-tip h4{font-family:'Sora',sans-serif;font-size:18px;font-weight:600;color:#0d1f2d;margin:0 0 6px}\n.temi-tip p{font-size:14px;line-height:1.55;color:#0d1f2d;margin:0}\n\n.temi-faq-item{margin-bottom:8px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;overflow:hidden}\n.temi-faq-item summary{padding:14px 20px;font-family:'Sora',sans-serif;font-size:15px;font-weight:600;color:#0d1f2d;cursor:pointer;background:#f8fafc;list-style:none;position:relative}\n.temi-faq-item summary::after{content:\"+\";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.5em;color:#10c4c7}\n.temi-faq-item[open] summary::after{content:\"\u2212\"}\n.temi-faq-item[open] summary{background:#fff;border-bottom:1px solid #e5e7eb}\n.temi-faq-a{padding:18px 22px;font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.7;color:#0d1f2d}\n\n.temi-aussi{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:24px 0}\n.temi-aussi a{display:block;padding:14px 18px;border:1px solid #e5e7eb;border-radius:8px;text-decoration:none;color:#0d1f2d;background:#fff;transition:.15s}\n.temi-aussi a:hover{border-color:#10c4c7;background:#f0fdfa}\n.temi-aussi a strong{font-family:'Sora',sans-serif;font-size:15px;display:block;margin-bottom:2px}\n.temi-aussi a span{font-family:'DM Sans',sans-serif;font-size:12px;color:#64748b}\n\n.temi-cta{background:linear-gradient(135deg,#0d1f2d,#1a3a4a);color:#fff;padding:48px 32px;border-radius:12px;margin:48px 0 0;text-align:center}\n.temi-cta h2{color:#fff;margin:0 0 12px;font-size:28px}\n.temi-cta p{color:#cbd5e1;font-size:17px;max-width:580px;margin:0 auto 22px}\n.temi-cta-btns{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}\n.temi-cta-btns a{display:inline-block;padding:14px 28px;border-radius:8px;text-decoration:none;font-weight:700;font-family:'DM Sans',sans-serif;font-size:15px}\n.temi-cta-btns a.primary{background:#10c4c7;color:#0d1f2d}\n.temi-cta-btns a.secondary{background:transparent;color:#fff;border:2px solid #fff}\n@media(max-width:680px){.temi-hero h1{font-size:32px}.temi-stat .value{font-size:26px}.temi-stat.--main .value{font-size:30px}.temi-results-money{grid-template-columns:1fr}}\n<\/style><section class=\"temi-hero\"><div class=\"biv-wrap\"><div class=\"breadcrumb\"><a href=\"\/\">Home<\/a> \u00b7 <a href=\"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/\">Simulators<\/a> \u00b7 True Tax Rate<\/div><span class=\"eyebrow\">\u25c6 Quebec Tax Calculator 2025<\/span><h1><span class=\"ez-toc-section\" id=\"Your-true-tax-rate-in-Quebec\"><\/span>Your <em>true tax rate<\/em> in Quebec<span class=\"ez-toc-section-end\"><\/span><\/h1><p class=\"lede\">Three different rates tell the whole story: the <strong>statutory marginal<\/strong> (the brackets), the <strong>effective marginal (TEMI)<\/strong> which includes QPP\/EI and the loss of credits, and the <strong>average effective rate<\/strong> on all your income. We calculate them, compare them, and explain everything.<\/p><\/div><\/section>\n\n&#8220;`\n<section class=\"temi-section\">\n  <h2><span class=\"ez-toc-section\" id=\"Understanding-the-Three-Tax-Rates\"><\/span>Understanding the Three Tax Rates<span class=\"ez-toc-section-end\"><\/span><\/h2>\n  <p>The media and politicians talk about &#8220;tax rates&#8221; in the singular. Tax specialists use at least three. Here is the nuance that changes everything.  <\/p>\n  <div class=\"temi-3rates\">\n    <div class=\"temi-3rate\">\n      <div class=\"label\">\u25c6 1 \/ Statutory Marginal<\/div>\n      <h4>Based on tax brackets only<\/h4>\n      <p>Federal (with Quebec 16.5% abatement) + Quebec provincial, on the next dollar earned. This is the rate displayed in most media. It <strong>underestimates<\/strong> your true cost.  <\/p>\n    <\/div>\n    <div class=\"temi-3rate focus\">\n      <div class=\"label\">\u25c6 2 \/ METR (effective marginal)<\/div>\n      <h4>All Inclusive, Next Dollar Earned<\/h4>\n      <p>Statutory marginal + QPP + EI + QPIP + loss of refundable credits (GST, CCB, Family Allowance, OAS). This is <strong>your true tax cost<\/strong> on the next $1,000 earned. Often 50-70% for families.  <\/p>\n    <\/div>\n    <div class=\"temi-3rate\">\n      <div class=\"label\">\u25c6 3 \/ Average number of students<\/div>\n      <h4>On your entire income<\/h4>\n      <p>Total taxes and contributions divided by your gross income. Always <strong>lower<\/strong> than the other two because the first brackets are taxed low (basic personal amount). <\/p>\n    <\/div>\n  <\/div>\n<\/section>\n&#8220;`html\n\n<section class=\"temi-section\">\n  <div class=\"temi-calc\">\n    <h2 style=\"margin-top:0\"><span class=\"ez-toc-section\" id=\"Calculator-%E2%80%94-Your-Three-Rates-Online\"><\/span>Calculator \u2014 Your Three Rates Online<span class=\"ez-toc-section-end\"><\/span><\/h2>\n    <div id=\"temi-meta\" class=\"temi-meta\">Loading Tax Settings&#8230;<\/div>\n\n    <div class=\"temi-form\">\n      <div class=\"temi-field\">\n        <label for=\"temi-income\">Annual Gross Revenue  <span id=\"temi-income-out\" class=\"temi-field-out\"><\/span><\/label>\n        <input id=\"temi-income\" type=\"range\" min=\"5000\" max=\"200000\" step=\"1000\" value=\"55000\"\/>\n      <\/div>\n      <div class=\"temi-field\">\n        <label for=\"temi-family\">Family<\/label>\n        <select id=\"temi-family\">\n          <option value=\"celibataire\">Single without children<\/option>\n          <option value=\"couple\" selected=\"selected\">Couple<\/option>\n          <option value=\"monoparental\">Single-parent family<\/option>                              \n        <\/select>         \n      <\/div>\n      <div class=\"temi-field\">\n        <label for=\"temi-kids\">Dependent children (under 18 years of age)<\/label>\n        <select id=\"temi-kids\">\n          <option value=\"0\">None<\/option>\n          <option value=\"1\">1 child<\/option>\n          <option value=\"2\" selected=\"selected\">2 children<\/option>\n          <option value=\"3\">3 children<\/option>\n          <option value=\"4\">4 or more children<\/option>\n        <\/select>\n      <\/div>\n      <div class=\"temi-field\">\n        <label for=\"temi-age\">Your age<\/label>\n        <input id=\"temi-age\" type=\"number\" min=\"18\" max=\"100\" value=\"40\"\/>\n      <\/div>\n    <\/div>\n\n    <div class=\"temi-results\">\n      <div class=\"temi-stat\">\n        <div class=\"label\">Statutory marginal<\/div>\n        <div class=\"value\" id=\"temi-stat-pct\">\u2014<\/div>\n        <div class=\"note\">Fed+Qc brackets only<\/div>\n      <\/div>\n      <div class=\"temi-stat --main\">\n        <div class=\"label\">\u25c6 METR (effective marginal)<\/div>\n        <div class=\"value\" id=\"temi-temi-pct\">\u2014<\/div>\n        <div class=\"note\">On the next $1,000 \u2014 ALL INCLUDED<\/div>\n      <\/div>\n      <div class=\"temi-stat\">\n        <div class=\"label\">Average number of employees<\/div>\n        <div class=\"value\" id=\"temi-avg-pct\">\u2014<\/div>\n        <div class=\"note\">Taxes + Contributions \/ Income<\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"temi-results-money\">\n      <div class=\"temi-stat --keep\">\n        <div class=\"label\">Keep on $1,000<\/div>\n        <div class=\"value\" id=\"temi-keep-1k\">\u2014<\/div>\n        <div class=\"note\">Net in your pocket after METR<\/div>\n      <\/div>\n      <div class=\"temi-stat --lose\">\n        <div class=\"label\">You lose on $1,000<\/div>\n        <div class=\"value\" id=\"temi-lose-1k\">\u2014<\/div>\n        <div class=\"note\">Tax + contributions + forfeited credits<\/div>\n      <\/div>\n    <\/div>\n\n    <h3 style=\"margin-bottom:6px\">Composition of the METR<\/h3>\n    <p style=\"font-size:14px;color:#64748b;margin:0 0 14px\">Breakdown by category of the charges that apply to your next dollar earned.<\/p>\n    <div id=\"temi-breakdown\"><\/div>\n\n    <h3 style=\"margin-top:32px;margin-bottom:6px\">METR curve by income<\/h3>\n    <p style=\"font-size:14px;color:#64748b;margin:0 0 14px\">The blue dot marker indicates your current income. Move the cursor to explore the tiers. <\/p>\n    <div id=\"temi-chart\"><\/div>\n\n    <div class=\"temi-disclaimer\">\n      <h4>\u26a0\ufe0f Scope of the calculator \u2014 read before you act<\/h4>\n      <p><strong>Included:<\/strong><\/p>\n      <ul>\n        <li>Quebec federal + provincial tax (2025 brackets) with basic personal amount<\/li>\n        <li>Quebec Abatement 16.5% on Federal Tax<\/li>\n        <li>QPP premiums (basic + additional), Employment Insurance (QC rate), QPIP<\/li>\n        <li>Phase-outs: GST credit, Quebec solidarity credit, CCB (according to # children \u00d7 bracket), Qc family allowance, PSV recovery (65+)<\/li>\n      <\/ul>\n      <p><strong>Not included (and it sometimes changes a lot):<\/strong><\/p>\n      <ul>\n        <li>RRSP\/TFSA\/RESP\/FHSA contributions \u2014 which actually reduce your taxable income<\/li>\n        <li>Non-refundable credits: medical expenses, donations, public transit, education, person with a disability, caregiver<\/li>\n        <li>Pension splitting between spouses, professional allowance, deduction for employees<\/li>\n        <li>Annuitant\/Self-Employment HSF, Reduced Child Care Subsidy, Public Drug Premium<\/li>\n      <\/ul>\n      <p><strong>As a result,<\/strong> this calculator gives <em>orders of magnitude<\/em> and illustrates the &#8220;bumps&#8221; of the METR. It <strong>is not a substitute<\/strong> for tax software or the advice of a tax professional for important decisions (RRSP vs. TFSA, retirement, sale of assets, etc.). <\/p>\n    <\/div>\n  <\/div>\n\n  <h2><span class=\"ez-toc-section\" id=\"Compare-with-an-official-calculator\"><\/span>Compare with an official calculator<span class=\"ez-toc-section-end\"><\/span><\/h2>\n  <p>To validate the order of magnitude of your <strong>average effective rate<\/strong> or file your return, use one of these tools. The full METR (with phase-outs) is rarely displayed by consumer tools \u2014 that&#8217;s our angle here. <\/p>\n  <div class=\"temi-officiels\"><div class=\"temi-officiel\"><div class=\"org\">Revenu Qu\u00e9bec<\/div><h4>Disposable Income Calculator<\/h4><p>Official. Detailed calculation of taxes + contributions + refundable credits, by profile. <\/p><a href=\"https:\/\/www.revenuquebec.ca\/fr\/citoyens\/declaration-de-revenus\/produire-votre-declaration-de-revenus\/calculateur-revenu-disponible\/\" rel=\"nofollow noopener\" target=\"_blank\">Open \u2192<\/a><\/div><div class=\"temi-officiel\"><div class=\"org\">EY Canada<\/div><h4>Income Tax Calculator<\/h4><p>All levels of government and province in Canada. Indexed annually. <\/p><a href=\"https:\/\/www.ey.com\/fr_ca\/tax\/tax-calculators\" rel=\"nofollow noopener\" target=\"_blank\">Open \u2192<\/a><\/div><div class=\"temi-officiel\"><div class=\"org\">Intuit Canada<\/div><h4>TurboTax Software<\/h4><p>To file the return. Calculates the exact tax based on your actual credits. <\/p><a href=\"https:\/\/turboimpot.intuit.ca\/\" rel=\"nofollow noopener\" target=\"_blank\">Open \u2192<\/a><\/div><\/div>\n\n  <h2><span class=\"ez-toc-section\" id=\"Why-the-rate-you-see-on-the-screen-is-not-your-true-rate\"><\/span>Why the rate you see on the screen is not your true rate<span class=\"ez-toc-section-end\"><\/span><\/h2>\n  <p>A $70,000 resident doctor with two young children, seen as the &#8220;27.5% bracket,&#8221; actually loses <strong>about 55% of every additional $1,000<\/strong> earned in overtime:<\/p>\n  <ul>\n    <li>Fed+QC brackets: ~32%<\/li>\n    <li>Additional QPP + EI + QPIP: ~6%<\/li>\n    <li>CCB Recovery (2 children, low bracket): 13.5%<\/li>\n    <li>Reduction in the Quebec family allowance: 4%<\/li>\n  <\/ul>\n  <p>= 55%. These phase-outs <strong>pile up<\/strong> and create the famous &#8220;bumps&#8221; that make RRSP optimization particularly profitable around $50-90K for families. <\/p>\n\n  <h2><span class=\"ez-toc-section\" id=\"Five-strategies-to-reduce-your-METR\"><\/span>Five strategies to reduce your METR<span class=\"ez-toc-section-end\"><\/span><\/h2>\n  <div class=\"temi-tips\">\n    <div class=\"temi-tip\"><h4>1. Contribute to an RRSP<\/h4><p>Reduces taxable income, thus &#8220;shifting&#8221; your position on the curve. Double Gain: Less tax + clawback of credits like the CCB and Family Allowance. <\/p><\/div>\n    <div class=\"temi-tip\"><h4>2. Contribute to a TFSA<\/h4><p>Income is not reduced, but yield and withdrawals do not count in the calculation of the future METR. Ideal if you are in a &#8220;bump&#8221;. <\/p><\/div>\n    <div class=\"temi-tip\"><h4>3. Income splitting<\/h4><p>Retired couples: splitting of the pension between spouses. Family in business: salary to spouse at a reasonable rate. <\/p><\/div>\n    <div class=\"temi-tip\"><h4>4. Spread out exceptional income<\/h4><p>Sale of a property, RRSP withdrawal, retirement bonus: if possible, spread it over several years so as not to hit the &#8220;bump&#8221; all at once.<\/p><\/div>\n    <div class=\"temi-tip\"><h4>5. Plan for RRIF withdrawals<\/h4><p>After age 71, the minimum withdrawal from the RRIF increases with age. Combined with the OAS and QPP, you quickly enter the PSV recovery zone (15%). <\/p><\/div>\n  <\/div>\n\n  <h2 id=\"faq\"><span class=\"ez-toc-section\" id=\"Frequently-asked-questions\"><\/span>Frequently asked questions<span class=\"ez-toc-section-end\"><\/span><\/h2>\n  <details class=\"temi-faq-item\"><summary>What is the difference between the three rates displayed?<\/summary><div class=\"temi-faq-a\"><strong>Statutory marginal rate<\/strong> : percentage according to tax brackets only (federal + QC, after Quebec abatement). This is what the media often display. <strong>METR (effective marginal rate):<\/strong>\n&#8220;&#8220;&#8220;html\n<strong> adds premiums (QPP, EI, QPIP) and loss of refundable credits (GST, CCB, Family Allowance, OAS). That&#8217;s your <em>true cost<\/em> on the next dollar. <strong>Average effective rate<\/strong> : taxes + contributions on <em>your entire<\/em> income \u2014 always lower than the marginal rate.  <\/div><\/details><details class=\"temi-faq-item\"><summary>Why can my METR reach 60-70% at certain levels?<\/summary><div class=\"temi-faq-a\">Because several <strong>phase-outs add up<\/strong>. A $50,000 family with two children can lose 13.5% of CCB + 4% of Family Allowance + 5% GST + 6% of Solidarity, in addition to paying ~28% tax and 5.9% QPP. Total: 60-65% METR on the next $1,000 earned. It&#8217;s mathematical, not an opinion.   <\/div><\/details><details class=\"temi-faq-item\"><summary>&#8220;True tax rate&#8221; \u2014 is that an official term?<\/summary><div class=\"temi-faq-a\"><strong>No.<\/strong>  There is no single legal definition. Tax experts speak of <strong>the &#8220;TEMI&#8221;<\/strong> (effective marginal tax rate). &#8220;True rate&#8221; is a pedagogical simplification. This calculator uses the METR method: add up all marginal charges that apply to the next dollar earned. The official curves published in Quebec by Revenu Qu\u00e9bec and specialized tax experts use the same approach.    <\/div><\/details><details class=\"temi-faq-item\"><summary>What is included in the calculation?<\/summary><div class=\"temi-faq-a\"><strong>Taxes<\/strong> : federal with 16.5% Qc allowance + provincial Qc + basic personal amount. <strong>Contributions<\/strong> : QPP (basic + sup.), Employment Insurance (QC rate), QPIP. <strong>Phase-outs<\/strong> : GST credit, Quebec solidarity credit, CCB (according to # children \u00d7 bracket), Quebec family allowance, PSV recovery (65+).<\/div><\/details><details class=\"temi-faq-item\"><summary>What is NOT included (compute limits)?<\/summary><div class=\"temi-faq-a\">DEDUCTIBLE RRSP\/TFSA\/RESP, non-refundable credits (medical expenses, donations, public transit, tuition fees), disability credit, professional abatement, workers&#8217; deduction, pension splitting, annuitant\/self-employed HSF, reduced daycare subsidy, public drug plan premium, specific employment deductions. To incorporate these elements: consult a certified accountant or financial planner. <\/div><\/details><details class=\"temi-faq-item\"><summary>How can I check that the calculation is correct?<\/summary><div class=\"temi-faq-a\">Compare with an official tool like <a href=\"https:\/\/www.revenuquebec.ca\/fr\/citoyens\/declaration-de-revenus\/produire-votre-declaration-de-revenus\/calculateur-revenu-disponible\/\" rel=\"nofollow noopener\" target=\"_blank\">Revenu Qu\u00e9bec&#8217;s disposable income calculator<\/a>, <a href=\"https:\/\/www.ey.com\/fr_ca\/tax\/tax-calculators\" rel=\"nofollow noopener\" target=\"_blank\">EY Canada&#8217;s tax calculator<\/a>, or software like TurboTax\/UFile. The spread on the <em>average rate<\/em> should be less than 2-3%. On the <em>statutory marginal<\/em>, identical. For the full METR, few consumer tools display it \u2014 that&#8217;s the added value of our calculator.   <\/div><\/details><details class=\"temi-faq-item\"><summary>How do I reduce my METR?<\/summary><div class=\"temi-faq-a\">Five main levers: <strong>(1) contribute to the RRSP<\/strong> to reduce your taxable income; <strong>(2) contribute to a TFSA<\/strong> (income does not increase, return is tax-free); <strong>(3) splitting<\/strong> pension income with your spouse; <strong>(4) spreading<\/strong> the windfall income over several years; <strong>(5) contribute to the RESP<\/strong> for the children. Each scenario requires personalized advice. <\/div><\/details><details class=\"temi-faq-item\"><summary>Can this calculator replace a tax specialist?<\/summary><div class=\"temi-faq-a\"><strong>No.<\/strong> It is used to <em>visualize the orders of magnitude<\/em> and to understand <em>why earning an extra $1,000 does not bring $1,000 into your pocket<\/em>. To file your return: TurboTax, UFile, or UFile. To optimize seriously (RRSP vs. TFSA, retirement, asset sales): a CPA accountant or a certified financial planner (F. Pl.) \u2014 often a few hundred dollars that amortize on decisions of $10,000-100,000.  <\/div><\/details>\n\n  <h2><span class=\"ez-toc-section\" id=\"Other-Assur360-simulators\"><\/span>Other Assur360 simulators<span class=\"ez-toc-section-end\"><\/span><\/h2>\n  <div class=\"temi-aussi\"><a href=\"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/quebec-tax-savings-plan-comparator-2026-rrsp-tfsa-fhsa-resp-vrsp\/\">RRSP <span>vs. TFSA vs. FHSA<\/span> <strong>Tax Regimes<\/strong><\/a><a href=\"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/quebec-emergency-fund-calculator-2026-how-much-to-save-to-protect-yourself\/\"><strong>Emergency Fund How<\/strong><span>Much to Save<\/span><\/a><a href=\"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/life-insurance-needs-calculator-2026-dime-method-replacement-capital\/\"><strong>Life insurance<\/strong><span>DIME method + capital<\/span><\/a><a href=\"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/disability-insurance-needs-calculator-2026-optimal-waiting-period-assur360\/\"><strong>Disability insurance<\/strong><span>Optimal waiting period<\/span><\/a><a href=\"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/mortgage-insurance-calculator-bank-vs-personal-life-insurance\/\"><strong>Bank Mortgage<\/strong><span>vs Personal Life<\/span><\/a><a href=\"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/true-5-year-cost-of-vehicle-ownership-quebec-calculator-2026\/\"><strong>Vehicle cost<\/strong><span>Over 5 years, all included<\/span><\/a><a href=\"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/electric-vehicle-vs-gasoline-when-does-it-pay-off-qc-calculator-2026\/\"><strong>EV vs petrol<\/strong><span>When is it profitable?<\/span><\/a><a href=\"https:\/\/www.assur360.ca\/en\/assur360-simulators-free-tools-for-your-financial-decisions\/\"><strong>All<\/strong><span>Assur360 Hub simulators<\/span><\/a><\/div>\n<\/section>\n\n&#8220;`\n<section class=\"temi-cta\">\n  <h2><span class=\"ez-toc-section\" id=\"Beyond-the-numbers-theres-your-real-life\"><\/span>Beyond the numbers, there&#8217;s your real life.<span class=\"ez-toc-section-end\"><\/span><\/h2>\n  <p>Our insurance broker can help you turn these calculations into concrete decisions: life insurance, disability, mortgage, emergency fund. Free consultation with no obligation.<\/p>\n  <div class=\"temi-cta-btns\">\n    <a href=\"\/soumission\/\" class=\"primary\">Free<\/a>\n quote<a href=\"tel:+18663574451\" class=\"secondary\">1-866-357-4451<\/a>    \n  <\/div>\n<\/section>\n<p><script>(function() {\n  'use strict';\n  const PARAMS_URL = '\/wp-json\/temi\/v1\/params';\n  let PARAMS = null;\n  let chart = {currentIncome: 0};<\/script><\/p>\n<p>  function fmtPct(n) { return (n*100).toFixed(1) + &#8216;%&#8217;; }\n  function fmtMoney(n) { return new Intl.NumberFormat(&#8216;fr-CA&#8217;, {style:&#8217;currency&#8217;, currency:&#8217;CAD&#8217;, maximumFractionDigits:0}).format(n); }\n  function fmt(n) { return new Intl.NumberFormat(&#8216;fr-CA&#8217;).format(n); }<\/p>\n<p>  \/\/ Imp\u00f4t progressif total \u00e0 un revenu donn\u00e9\n  function progressiveTax(income, brackets) {\n    let tax = 0, lower = 0;\n    for (const b of brackets) {\n      const upper = b.to === null ? Infinity : b.to;\n      if (income &lt;= lower) break;\n      const taxable = Math.min(income, upper) &#8211; lower;\n      tax += taxable * b.rate;\n      if (income &lt;= upper) break;\n      lower = upper;\n    }\n    return tax;\n  }<\/p>\n<p>  function bracketRate(income, brackets) {\n    let lower = 0;\n    for (const b of brackets) {\n      const upper = b.to === null ? Infinity : b.to;\n      if (income &lt;= upper) return b.rate;\n      lower = upper;\n    }\n    return brackets[brackets.length-1].rate;\n  }<\/p>\n<p>  function rrqContribution(income, p) {\n    const ex = p.rrq.exemption;\n    if (income &lt;= ex) return 0;\n    const tier1 = Math.max(0, Math.min(income, p.rrq.mga_1) &#8211; ex);\n    let cot = tier1 * (p.rrq.rate_base + p.rrq.rate_supp_1);\n    if (income > p.rrq.mga_1) {\n      const tier2 = Math.min(income, p.rrq.mga_2) &#8211; p.rrq.mga_1;\n      cot += tier2 * p.rrq.rate_supp_2;\n    }\n    return cot;\n  }<\/p>\n<p>  function aeContribution(income, p) {\n    return Math.min(income, p.ae.max_insurable) * p.ae.rate_qc;\n  }<\/p>\n<p>  function rqapContribution(income, p) {\n    return Math.min(income, p.rqap.max_insurable) * p.rqap.rate_employee;\n  }<\/p>\n<p>  \/\/ Marginal rates par composante\n  function rrqMarg(income, p) {\n    if (income &lt;= p.rrq.exemption) return 0;\n    if (income &lt;= p.rrq.mga_1) return p.rrq.rate_base + p.rrq.rate_supp_1;\n    if (income &lt;= p.rrq.mga_2) return p.rrq.rate_supp_2;\n    return 0;\n  }\n  function aeMarg(income, p) { return income &lt;p.ae.max_insurable ? p.ae.rate_qc : 0; } function rqapMarg(income, p) { return income &lt;p.rqap.max_insurable ? p.rqap.rate_employee : 0; } function aceMarg(income, kids, p) { if (kids &lt;= 0) return 0; const k = Math.min(kids, 4); if (income &lt;p.ace.low_threshold) return 0; if (income &lt;p.ace.high_threshold) return p.ace.low_rate[k] || 0; return p.ace.high_rate[k] || 0; } function alloFamilleMarg(income, kids, family, p) { if (kids &lt;= 0) return 0; const seuil = family === &#8216;monoparental&#8217; ? p.allocation_famille_qc.phaseout_single : p.allocation_famille_qc.phaseout_couple; return income <seuil ? 0 : p.allocation_famille_qc.phaseout_rate; } function tpsMarg(income, p) { return income> p.tps_credit.phaseout_start ? p.tps_credit.phaseout_rate : 0; }\n  function solidariteMarg(income, p) { return income > p.solidarite.phaseout_start ? p.solidarite.phaseout_rate : 0; }\n  function psvMarg(income, age, p) { return age >= 65 &#038;&#038; income > p.psv_clawback.threshold ? p.psv_clawback.rate : 0; }<\/seuil><\/p>\n<p>  \/\/ ===== TEMI : marginal effectif (somme de toutes les charges sur prochain dollar) =====\n  function temiAt(income, profile, p) {\n    const fedRaw = bracketRate(income, p.fed_brackets);\n    const fed = fedRaw * (1 &#8211; p.fed_qc_abatement);\n    const qc = bracketRate(income, p.qc_brackets);\n    const stat = fed + qc;  \/\/ taux marginal STATUTAIRE\n    const rrq = rrqMarg(income, p);\n    const ae = aeMarg(income, p);\n    const rqap = rqapMarg(income, p);\n    const tps = tpsMarg(income, p);\n    const sol = solidariteMarg(income, p);\n    const ace = aceMarg(income, profile.kids, p);\n    const allo = alloFamilleMarg(income, profile.kids, profile.family, p);\n    const psv = psvMarg(income, profile.age, p);\n    const total = stat + rrq + ae + rqap + tps + sol + ace + allo + psv;\n    return {\n      total, stat,\n      breakdown: {\n        &#8216;Federal tax (after Qc abatement)&#8217;: fed,\n        &#8216;Quebec tax&#8217;: qc,\n        &#8216;RRQ (base + supplementary)&#8217;: rrq,\n        &#8216;Employment Insurance (EI)&#8217;: ae,\n        &#8216;RQAP&#8217;: rqap,\n        &#8216;TPS credit loss&#8217;: tps,\n        &#8216;Solidarity credit loss&#8217;: sol,\n        &#8216;ACE recovery&#8217;: ace,\n        &#8216;Quebec family allowance reduction&#8217;: allo,\n        &#8216;PSV recovery (65+)&#8217;: psv,\n      }\n    };\n  }<\/p>\n<p>  \/\/ ===== Average effective rate: taxes + contributions \/ income =====\n  function averageRate(income, profile, p) {\n    if (income &lt;= 0) return 0;\n    \/\/ Federal tax\n    const fedTax = progressiveTax(income, p.fed_brackets);\n    const fedCredit = p.basic_personal_amount.federal * p.fed_brackets[0].rate;\n    const fedNet = Math.max(0, fedTax &#8211; fedCredit) * (1 &#8211; p.fed_qc_abatement);\n    \/\/ Quebec tax\n    const qcTax = progressiveTax(income, p.qc_brackets);\n    const qcCredit = p.basic_personal_amount.quebec * p.qc_brackets[0].rate;\n    const qcNet = Math.max(0, qcTax &#8211; qcCredit);\n    \/\/ Contributions\n    const rrq = rrqContribution(income, p);\n    const ae = aeContribution(income, p);\n    const rqap = rqapContribution(income, p);\n    const totalNet = fedNet + qcNet + rrq + ae + rqap;\n    return totalNet \/ income;\n  }<\/p>\n<p>  function buildCurve(profile, p) {\n    const points = [];\n    for (let inc = 5000; inc &lt;= 200000; inc += 1000) {\n      points.push({x: inc, y: temiAt(inc, profile, p).total});\n    }\n    return points;\n  }<\/p>\n<p>  function renderChart(curve, currentIncome, p) {\n    const W = 720, H = 280, padL = 50, padR = 12, padT = 16, padB = 30;\n    const xmin = 5000, xmax = 200000, ymin = 0, ymax = 0.85;\n    const xS = x => padL + (x &#8211; xmin) \/ (xmax &#8211; xmin) * (W &#8211; padL &#8211; padR);\n    const yS = y => H &#8211; padB &#8211; (y &#8211; ymin) \/ (ymax &#8211; ymin) * (H &#8211; padT &#8211; padB);\n    let path = &#8220;M &#8221; + xS(curve[0].x) + &#8221; &#8221; + yS(curve[0].y);\n    for (let i = 1; i &lt; curve.length; i++) path += &#8221; L &#8221; + xS(curve[i].x) + &#8221; &#8221; + yS(curve[i].y);\n    let xticks = &#8221;, yticks = &#8221;;\n    for (let v = 25000; v &lt;= xmax; v += 25000) {\n      xticks += `<line x1=\"${xS(v)}\" y1=\"${H-padB}\" x2=\"${xS(v)}\" y2=\"${H-padB+5}\" stroke=\"#0d1f2d33\"><\/line><text x=\"${xS(v)}\" y=\"${H-padB+18}\" font-size=\"10\" fill=\"#0d1f2d99\" text-anchor=\"middle\" font-family=\"DM Sans, sans-serif\">${fmt(v\/1000)}k<\/text>`;\n    }\n    for (let v = 0.1; v &lt;= 0.8; v += 0.1) {\n      yticks += `<line x1=\"${padL}\" y1=\"${yS(v)}\" x2=\"${W-padR}\" y2=\"${yS(v)}\" stroke=\"#0d1f2d11\"><\/line><text x=\"${padL-6}\" y=\"${yS(v)+3}\" font-size=\"10\" fill=\"#0d1f2d99\" text-anchor=\"end\" font-family=\"DM Sans, sans-serif\">${(v*100).toFixed(0)}%<\/text>`;\n    }\n    const ix = xS(currentIncome), iy = yS(temiAt(currentIncome, chart.profile, p).total);\n    return `<svg viewBox=\"0 0 ${W} ${H}\" style=\"max-width:100%;height:auto;display:block;background:#fff;border-radius:8px\"><rect x=\"${padL}\" y=\"${padT}\" width=\"${W-padL-padR}\" height=\"${H-padT-padB}\" fill=\"#f8fafc\"><\/rect>${yticks}${xticks}\n      <path d=\"${path}\" stroke=\"#10c4c7\" stroke-width=\"2.4\" fill=\"none\"><\/path><line x1=\"${ix}\" y1=\"${padT}\" x2=\"${ix}\" y2=\"${H-padB}\" stroke=\"#0d1f2d\" stroke-width=\"1.5\" stroke-dasharray=\"4 3\"><\/line><circle cx=\"${ix}\" cy=\"${iy}\" r=\"6\" fill=\"#0d1f2d\" stroke=\"#fff\" stroke-width=\"2\"><\/circle><text x=\"${padL}\" y=\"${padT-2}\" font-size=\"11\" fill=\"#0d1f2d\" font-family=\"DM Sans, sans-serif\" font-weight=\"600\">TEMI on the next dollar earned (%)<\/text><\/svg>`;\n  }<\/p>\n<p>  function renderBreakdown(comp) {\n    const colors = {\n      &#8216;Federal tax (after Qc abatement)&#8217;: &#8216;#0d1f2d&#8217;,\n      &#8216;Quebec tax&#8217;: &#8216;#10c4c7&#8217;,\n      &#8216;RRQ (base + supplementary)&#8217;: &#8216;#f59e0b&#8217;,\n      &#8216;Employment Insurance (EI)&#8217;: &#8216;#a78bfa&#8217;,\n      &#8216;RQAP&#8217;: &#8216;#ec4899&#8217;,\n      &#8216;TPS credit loss&#8217;: &#8216;#84cc16&#8217;,\n      &#8216;Solidarity credit loss&#8217;: &#8216;#06b6d4&#8217;,\n      &#8216;ACE recovery&#8217;: &#8216;#ef4444&#8217;,\n      &#8216;Quebec family allowance reduction&#8217;: &#8216;#f97316&#8217;,\n      &#8216;PSV recovery (65+)&#8217;: &#8216;#7c3aed&#8217;,\n    };\n    const items = Object.entries(comp).filter(([_, v]) => v > 0.0005);\n    const total = items.reduce((s, [_, v]) => s + v, 0);\n    if (total === 0) return &#8216;<\/p>\n<p style=\"color:#64748b;font-size:14px\">No marginal charge detected at this income level.<\/p>\n<p>&#8216;;\n    let bar = &#8221;, rows = &#8221;;\n    items.sort((a, b) => b[1] &#8211; a[1]);\n    for (const [k, v] of items) {\n      const pct = (v \/ total) * 100;\n      bar += `<\/p>\n<div title=\"${k}: ${fmtPct(v)}\" style=\"background:${colors[k]||'#999'};width:${pct}%;height:100%\"><\/div>\n<p>`;\n      rows += `<\/p>\n<div class=\"temi-row\"><span class=\"temi-dot\" style=\"background:${colors[k]||'#999'}\"><\/span><span class=\"temi-row-name\">${k}<\/span><span class=\"temi-row-val\">${fmtPct(v)}<\/span><\/div>\n<p>`;\n    }\n    return `<\/p>\n<div class=\"temi-bar\">${bar}<\/div>\n<div class=\"temi-rows\">${rows}<\/div>\n<p>`;\n  }<\/p>\n<p>  function update() {\n    if (!PARAMS) return;\n    const income = parseInt(document.getElementById(&#8216;temi-income&#8217;).value) || 0;\n    const family = document.getElementById(&#8216;temi-family&#8217;).value;\n    const kids = parseInt(document.getElementById(&#8216;temi-kids&#8217;).value) || 0;\n    const age = parseInt(document.getElementById(&#8216;temi-age&#8217;).value) || 35;\n    chart.profile = {family, kids, age};\n    chart.currentIncome = income;\n    document.getElementById(&#8216;temi-income-out&#8217;).textContent = fmtMoney(income);\n    const t = temiAt(income, chart.profile, PARAMS);\n    const avgRate = averageRate(income, chart.profile, PARAMS);\n    document.getElementById(&#8216;temi-stat-pct&#8217;).textContent = fmtPct(t.stat);\n    document.getElementById(&#8216;temi-temi-pct&#8217;).textContent = fmtPct(t.total);\n    document.getElementById(&#8216;temi-avg-pct&#8217;).textContent = fmtPct(avgRate);\n    const lose = Math.round(t.total * 1000);\n    document.getElementById(&#8216;temi-keep-1k&#8217;).textContent = fmtMoney(1000 &#8211; lose);\n    document.getElementById(&#8216;temi-lose-1k&#8217;).textContent = fmtMoney(lose);\n    document.getElementById(&#8216;temi-breakdown&#8217;).innerHTML = renderBreakdown(t.breakdown);\n    document.getElementById(&#8216;temi-chart&#8217;).innerHTML = renderChart(buildCurve(chart.profile, PARAMS), income, PARAMS);\n  }<\/p>\n<p>  function init() {\n    fetch(PARAMS_URL).then(r => r.json()).then(p => {\n      PARAMS = p;\n      document.getElementById(&#8216;temi-meta&#8217;).textContent = `Parameters ${p.year} \u00b7 updated on ${p.last_updated}`;\n      [&#8216;temi-income&#8217;, &#8216;temi-family&#8217;, &#8216;temi-kids&#8217;, &#8216;temi-age&#8217;].forEach(id => {\n        const el = document.getElementById(id);\n        if (el) {\n          el.addEventListener(&#8216;input&#8217;, update);\n          el.addEventListener(&#8216;change&#8217;, update);\n        }\n      });\n      update();\n    }).catch(() => {\n      document.getElementById(&#8216;temi-meta&#8217;).textContent = &#8216;Error loading tax parameters.&#8217;;\n    });\n  }\n  if (document.readyState === &#8216;loading&#8217;) document.addEventListener(&#8216;DOMContentLoaded&#8217;, init);\n  else init();\n})();\n<\/p>\n<script type=\"application\/ld+json\">{\"@context\": \"https:\/\/schema.org\", \"@type\": \"FAQPage\", \"mainEntity\": [{\"@type\": \"Question\", \"name\": \"What is the difference between the three rates displayed?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Statutory marginal rate: percentage based solely on tax brackets (federal + Quebec, after Quebec deduction). This is what the media often displays. TEMI (effective marginal rate): adds contributions (QPP, EI, QPIP) and the loss of refundable credits (GST, ACE, family allowance, solidarity). This is your true cost on the next dollar. Average effective rate: taxes + contributions on your entire income \u2014 always lower than the marginal rate.\"}}, {\"@type\": \"Question\", \"name\": \"Why can my TEMI reach 60-70% at certain thresholds?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Because several phase-outs add up. A family earning $50,000 with two children can lose 13.5% from ACE + 4% from family allowance + 5% from GST + 6% from solidarity, in addition to paying about 28% in taxes and 5.9% in QPP. Total: 60-65% TEMI on the next $1,000 earned. It's mathematical, not an opinion.\"}}, {\"@type\": \"Question\", \"name\": \"\u201cTrue tax rate\u201d \u2014 is this an official term?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"No. There is no single legal definition. Tax experts refer to \u201cTEMI\u201d (effective marginal tax rate). \u201cTrue rate\u201d is a pedagogical simplification. This calculator applies the TEMI method: adding all marginal charges that apply to the next dollar earned. The official curves published in Quebec by Revenu Qu\u00e9bec and specialized tax experts use the same approach.\"}}, {\"@type\": \"Question\", \"name\": \"What is included in the calculation?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Taxes: federal with Quebec deduction 16.5% + provincial Quebec + basic personal amount. Contributions: QPP (basic + additional), employment insurance (Quebec rate), QPIP. Phase-outs: GST credit, Quebec solidarity credit, ACE (based on # of children \u00d7 bracket), Quebec family allowance, recovery of PSV (65+).\"}}, {\"@type\": \"Question\", \"name\": \"What is NOT included (limits of the calculation)?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Deductible RRSP\/TFSA\/RESP, non-refundable credits (medical expenses, donations, public transit, tuition fees), disability credit, professional deduction, worker deduction, pension splitting, FSS for retiree\/self-employed, reduced daycare subsidy, public drug insurance premium, specific employment deductions. To incorporate these elements: consult an accountant or accredited financial planner.\"}}, {\"@type\": \"Question\", \"name\": \"How can I verify that the calculation is correct?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Compare with an official tool like Revenu Qu\u00e9bec's disposable income calculator, EY Canada's tax calculator, or software like TurboTax\/UFile. The discrepancy on the average rate should be less than 2-3%. For the statutory marginal rate, it should be identical. For the complete TEMI, few public tools display it \u2014 this is the added value of our calculator.\"}}, {\"@type\": \"Question\", \"name\": \"How can I reduce my TEMI?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Five main levers: (1) contribute to the RRSP to reduce your taxable income; (2) contribute to the TFSA (income does not increase, returns are tax-free); (3) split pension income with your spouse; (4) spread exceptional income over several years; (5) contribute to the RESP for children. Each scenario requires personalized advice.\"}}, {\"@type\": \"Question\", \"name\": \"Can this calculator replace a tax expert?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"No. It is meant to visualize orders of magnitude and understand why earning an additional $1,000 does not bring $1,000 into your pocket. To file your return: TurboTax, TaxExpert or UFile. For serious optimization (RRSP vs TFSA, retirement, asset sales): a CPA accountant or accredited financial planner (Pl. Fin.) \u2014 often a few hundred dollars that amortize over decisions of $10,000-100,000.\"}}]}\n<\/script><script type=\"application\/ld+json\">{\"@context\": \"https:\/\/schema.org\", \"@type\": \"BreadcrumbList\", \"itemListElement\": [{\"@type\": \"ListItem\", \"position\": 1, \"name\": \"Home\", \"item\": \"https:\/\/www.assur360.ca\/\"}, {\"@type\": \"ListItem\", \"position\": 2, \"name\": \"Simulators\", \"item\": \"https:\/\/www.assur360.ca\/simulation\/\"}, {\"@type\": \"ListItem\", \"position\": 3, \"name\": \"True Tax Rate\", \"item\": \"https:\/\/www.assur360.ca\/simulation\/vrai-taux-imposition-quebec\/\"}]}\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Three tax rates explained: statutory marginal, TEMI (effective marginal) and average workforce. Quebec 2025 calculator with interactive curves. <\/p>\n","protected":false},"author":1,"featured_media":62915,"parent":58627,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_seopress_titles_title":"True Tax Rate in Quebec \u2014 TEMI 2025 Calculator","_seopress_titles_desc":"3 rates explained: statutory marginal, METR, average number of employees. Comparable with Revenu Qu\u00e9bec, EY, TurboTax calculators. Annual update.  ","_seopress_robots_index":"","_seopress_robots_follow":"","_seopress_robots_imageindex":"","_seopress_robots_snippet":"","_seopress_robots_primary_cat":"","_seopress_robots_breadcrumbs":"","_seopress_robots_freeze_modified_date":"","_seopress_robots_custom_modified_date":"","_seopress_robots_canonical":"","_seopress_social_fb_title":"","_seopress_social_fb_desc":"","_seopress_social_fb_img":"","_seopress_social_fb_img_attachment_id":0,"_seopress_social_fb_img_width":0,"_seopress_social_fb_img_height":0,"_seopress_social_twitter_title":"","_seopress_social_twitter_desc":"","_seopress_social_twitter_img":"","_seopress_social_twitter_img_attachment_id":0,"_seopress_social_twitter_img_width":0,"_seopress_social_twitter_img_height":0,"_seopress_redirections_value":"","_seopress_redirections_enabled":"","_seopress_redirections_enabled_regex":"","_seopress_redirections_logged_status":"","_seopress_redirections_param":"","_seopress_redirections_type":0,"_seopress_analysis_target_kw":"","_seopress_news_disabled":"","_seopress_video_disabled":"","_seopress_video":[],"_seopress_pro_schemas_manual":[],"_seopress_pro_rich_snippets_disable_all":"","_seopress_pro_rich_snippets_disable":[],"_seopress_pro_schemas":[],"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"yasr_overall_rating":0,"yasr_post_is_review":"","yasr_auto_insert_disabled":"","yasr_review_type":"","yasr_pro_reviews_in_comment_enabled":0,"footnotes":""},"class_list":["post-61085","page","type-page","status-publish","has-post-thumbnail","hentry"],"yasr_visitor_votes":{"stars_attributes":{"read_only":false,"span_bottom":false},"number_of_votes":0,"sum_votes":0},"_links":{"self":[{"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/pages\/61085","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/comments?post=61085"}],"version-history":[{"count":10,"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/pages\/61085\/revisions"}],"predecessor-version":[{"id":61193,"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/pages\/61085\/revisions\/61193"}],"up":[{"embeddable":true,"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/pages\/58627"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/media\/62915"}],"wp:attachment":[{"href":"https:\/\/www.assur360.ca\/en\/wp-json\/wp\/v2\/media?parent=61085"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}