Error message

  • Deprecated function: Creation of dynamic property Drupal\tablefield\TableValue::$value is deprecated in Drupal\Core\TypedData\TypedData->setValue() (line 102 of core/lib/Drupal/Core/TypedData/TypedData.php).
    Drupal\Core\TypedData\TypedData->setValue(NULL, ) (Line: 87)
    Drupal\Core\TypedData\Plugin\DataType\Map->setValue(Array, ) (Line: 125)
    Drupal\Core\Field\FieldItemBase->setValue(Array, ) (Line: 206)
    Drupal\tablefield\Plugin\Field\FieldType\TablefieldItem->setValue(Array, ) (Line: 208)
    Drupal\Core\TypedData\TypedDataManager->getPropertyInstance(Object, 0, Array) (Line: 91)
    Drupal\Core\Field\FieldTypePluginManager->createFieldItem(Object, 0, Array) (Line: 41)
    Drupal\Core\Field\FieldItemList->createItem(0, Array) (Line: 69)
    Drupal\Core\TypedData\Plugin\DataType\ItemList->setValue(Array, ) (Line: 107)
    Drupal\Core\Field\FieldItemList->setValue(Array, ) (Line: 208)
    Drupal\Core\TypedData\TypedDataManager->getPropertyInstance(Object, 'field_calc_table', Array) (Line: 83)
    Drupal\Core\Field\FieldTypePluginManager->createFieldItemList(Object, 'field_calc_table', Array) (Line: 633)
    Drupal\Core\Entity\ContentEntityBase->getTranslatedField('field_calc_table', 'x-default') (Line: 597)
    Drupal\Core\Entity\ContentEntityBase->get('field_calc_table') (Line: 325)
    Drupal\Core\Entity\EntityViewBuilder->buildComponents(Array, Array, Array, 'default') (Line: 281)
    Drupal\Core\Entity\EntityViewBuilder->buildMultiple(Array) (Line: 18)
    Drupal\paragraphs\ParagraphViewBuilder->buildMultiple(Array) (Line: 238)
    Drupal\Core\Entity\EntityViewBuilder->build(Array)
    call_user_func_array(Array, Array) (Line: 111)
    Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 859)
    Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 421)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 240)
    Drupal\Core\Render\Renderer->render(Array) (Line: 475)
    Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 68)
    __TwigTemplate_291debf4453c7ba2e34da4fa4cd83699->doDisplay(Array, Array) (Line: 394)
    Twig\Template->displayWithErrorHandling(Array, Array) (Line: 367)
    Twig\Template->display(Array) (Line: 379)
    Twig\Template->render(Array) (Line: 38)
    Twig\TemplateWrapper->render(Array) (Line: 39)
    twig_render_template('themes/techprosolutions/templates/field/field.html.twig', Array) (Line: 348)
    Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 480)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 240)
    Drupal\Core\Render\Renderer->render(Array) (Line: 475)
    Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 111)
    __TwigTemplate_ff95cc8dbd011c21d5f5e7f83f8118b4->doDisplay(Array, Array) (Line: 394)
    Twig\Template->displayWithErrorHandling(Array, Array) (Line: 367)
    Twig\Template->display(Array) (Line: 379)
    Twig\Template->render(Array) (Line: 38)
    Twig\TemplateWrapper->render(Array) (Line: 39)
    twig_render_template('modules/custom/easytax_calculators/templates/ecp-calculator-page.html.twig', Array) (Line: 348)
    Drupal\Core\Theme\ThemeManager->render('ecp_calculator_page', Array) (Line: 480)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 240)
    Drupal\Core\Render\Renderer->render(Array, ) (Line: 238)
    Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 627)
    Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 231)
    Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 128)
    Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
    Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
    call_user_func(Array, Object, 'kernel.view', Object) (Line: 111)
    Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 186)
    Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 76)
    Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
    Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
    Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 28)
    Drupal\Core\StackMiddleware\ContentLength->handle(Object, 1, 1) (Line: 32)
    Drupal\big_pipe\StackMiddleware\ContentLength->handle(Object, 1, 1) (Line: 191)
    Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
    Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
    Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
    Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
    Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 36)
    Drupal\Core\StackMiddleware\AjaxPageState->handle(Object, 1, 1) (Line: 51)
    Drupal\Core\StackMiddleware\StackedHttpKernel->handle(Object, 1, 1) (Line: 704)
    Drupal\Core\DrupalKernel->handle(Object) (Line: 21)
    
  • Deprecated function: Creation of dynamic property Drupal\tablefield\Plugin\Field\FieldFormatter\TablefieldFormatter::$ModuleHandler is deprecated in Drupal\tablefield\Plugin\Field\FieldFormatter\TablefieldFormatter->__construct() (line 57 of modules/contrib/tablefield/src/Plugin/Field/FieldFormatter/TablefieldFormatter.php).
    Drupal\tablefield\Plugin\Field\FieldFormatter\TablefieldFormatter->__construct('tablefield', Array, Object, Array, 'hidden', 'default', Array, Object, Object) (Line: 64)
    Drupal\tablefield\Plugin\Field\FieldFormatter\TablefieldFormatter::create(Object, Array, 'tablefield', Array) (Line: 64)
    Drupal\Core\Field\FormatterPluginManager->createInstance('tablefield', Array) (Line: 126)
    Drupal\Core\Field\FormatterPluginManager->getInstance(Array) (Line: 205)
    Drupal\Core\Entity\Entity\EntityViewDisplay->getRenderer('field_calc_table') (Line: 241)
    Drupal\Core\Entity\Entity\EntityViewDisplay->buildMultiple(Array) (Line: 339)
    Drupal\Core\Entity\EntityViewBuilder->buildComponents(Array, Array, Array, 'default') (Line: 281)
    Drupal\Core\Entity\EntityViewBuilder->buildMultiple(Array) (Line: 18)
    Drupal\paragraphs\ParagraphViewBuilder->buildMultiple(Array) (Line: 238)
    Drupal\Core\Entity\EntityViewBuilder->build(Array)
    call_user_func_array(Array, Array) (Line: 111)
    Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 859)
    Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 421)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 240)
    Drupal\Core\Render\Renderer->render(Array) (Line: 475)
    Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 68)
    __TwigTemplate_291debf4453c7ba2e34da4fa4cd83699->doDisplay(Array, Array) (Line: 394)
    Twig\Template->displayWithErrorHandling(Array, Array) (Line: 367)
    Twig\Template->display(Array) (Line: 379)
    Twig\Template->render(Array) (Line: 38)
    Twig\TemplateWrapper->render(Array) (Line: 39)
    twig_render_template('themes/techprosolutions/templates/field/field.html.twig', Array) (Line: 348)
    Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 480)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 240)
    Drupal\Core\Render\Renderer->render(Array) (Line: 475)
    Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 111)
    __TwigTemplate_ff95cc8dbd011c21d5f5e7f83f8118b4->doDisplay(Array, Array) (Line: 394)
    Twig\Template->displayWithErrorHandling(Array, Array) (Line: 367)
    Twig\Template->display(Array) (Line: 379)
    Twig\Template->render(Array) (Line: 38)
    Twig\TemplateWrapper->render(Array) (Line: 39)
    twig_render_template('modules/custom/easytax_calculators/templates/ecp-calculator-page.html.twig', Array) (Line: 348)
    Drupal\Core\Theme\ThemeManager->render('ecp_calculator_page', Array) (Line: 480)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 240)
    Drupal\Core\Render\Renderer->render(Array, ) (Line: 238)
    Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 627)
    Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 231)
    Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 128)
    Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
    Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
    call_user_func(Array, Object, 'kernel.view', Object) (Line: 111)
    Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 186)
    Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 76)
    Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
    Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
    Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 28)
    Drupal\Core\StackMiddleware\ContentLength->handle(Object, 1, 1) (Line: 32)
    Drupal\big_pipe\StackMiddleware\ContentLength->handle(Object, 1, 1) (Line: 191)
    Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
    Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
    Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
    Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
    Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 36)
    Drupal\Core\StackMiddleware\AjaxPageState->handle(Object, 1, 1) (Line: 51)
    Drupal\Core\StackMiddleware\StackedHttpKernel->handle(Object, 1, 1) (Line: 704)
    Drupal\Core\DrupalKernel->handle(Object) (Line: 21)
    
  • Warning: Undefined array key "caption" in Drupal\tablefield\Plugin\Field\FieldFormatter\TablefieldFormatter->viewElements() (line 150 of modules/contrib/tablefield/src/Plugin/Field/FieldFormatter/TablefieldFormatter.php).
    Drupal\tablefield\Plugin\Field\FieldFormatter\TablefieldFormatter->viewElements(Object, 'en') (Line: 91)
    Drupal\Core\Field\FormatterBase->view(Object, 'en') (Line: 268)
    Drupal\Core\Entity\Entity\EntityViewDisplay->buildMultiple(Array) (Line: 339)
    Drupal\Core\Entity\EntityViewBuilder->buildComponents(Array, Array, Array, 'default') (Line: 281)
    Drupal\Core\Entity\EntityViewBuilder->buildMultiple(Array) (Line: 18)
    Drupal\paragraphs\ParagraphViewBuilder->buildMultiple(Array) (Line: 238)
    Drupal\Core\Entity\EntityViewBuilder->build(Array)
    call_user_func_array(Array, Array) (Line: 111)
    Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 859)
    Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 421)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 240)
    Drupal\Core\Render\Renderer->render(Array) (Line: 475)
    Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 68)
    __TwigTemplate_291debf4453c7ba2e34da4fa4cd83699->doDisplay(Array, Array) (Line: 394)
    Twig\Template->displayWithErrorHandling(Array, Array) (Line: 367)
    Twig\Template->display(Array) (Line: 379)
    Twig\Template->render(Array) (Line: 38)
    Twig\TemplateWrapper->render(Array) (Line: 39)
    twig_render_template('themes/techprosolutions/templates/field/field.html.twig', Array) (Line: 348)
    Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 480)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 240)
    Drupal\Core\Render\Renderer->render(Array) (Line: 475)
    Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 111)
    __TwigTemplate_ff95cc8dbd011c21d5f5e7f83f8118b4->doDisplay(Array, Array) (Line: 394)
    Twig\Template->displayWithErrorHandling(Array, Array) (Line: 367)
    Twig\Template->display(Array) (Line: 379)
    Twig\Template->render(Array) (Line: 38)
    Twig\TemplateWrapper->render(Array) (Line: 39)
    twig_render_template('modules/custom/easytax_calculators/templates/ecp-calculator-page.html.twig', Array) (Line: 348)
    Drupal\Core\Theme\ThemeManager->render('ecp_calculator_page', Array) (Line: 480)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 240)
    Drupal\Core\Render\Renderer->render(Array, ) (Line: 238)
    Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 627)
    Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 231)
    Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 128)
    Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
    Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
    call_user_func(Array, Object, 'kernel.view', Object) (Line: 111)
    Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 186)
    Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 76)
    Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
    Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
    Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 28)
    Drupal\Core\StackMiddleware\ContentLength->handle(Object, 1, 1) (Line: 32)
    Drupal\big_pipe\StackMiddleware\ContentLength->handle(Object, 1, 1) (Line: 191)
    Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
    Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
    Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
    Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
    Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 36)
    Drupal\Core\StackMiddleware\AjaxPageState->handle(Object, 1, 1) (Line: 51)
    Drupal\Core\StackMiddleware\StackedHttpKernel->handle(Object, 1, 1) (Line: 704)
    Drupal\Core\DrupalKernel->handle(Object) (Line: 21)
    

ELSS Calculator

Project an ELSS tax-saver SIP — market-linked growth over the 3-year lock-in and beyond, plus the 80C tax it saves in year one.

Year-wise growth
Year Invested Value at year end
1 ₹1,50,000 ₹1,60,117
2 ₹3,00,000 ₹3,40,540
3 ₹4,50,000 ₹5,43,846
4 ₹6,00,000 ₹7,72,935
5 ₹7,50,000 ₹10,31,080

What is an ELSS fund?

An equity-linked savings scheme (ELSS) is a mutual fund with a tax deduction attached: investments qualify under section 80C up to ₹1,50,000 a year, and in exchange every rupee is locked in for three years — the shortest lock-in of any 80C option. Because the money is invested in equities, returns are market-linked: historically attractive over long periods, but never guaranteed.

This calculator projects an ELSS SIP on both fronts at once — what the monthly investment could grow into at your expected return, and the old-regime tax the first year's investment saves at your income. The growth math is identical to a regular SIP; the lock-in simply means the projection never runs shorter than three years.

The growth formula

FV = P × [((1 + i)ⁿ − 1) ÷ i] × (1 + i)

  • FV — the projected value of your ELSS investment
  • P — the monthly SIP amount
  • i — the monthly rate: expected annual return ÷ 12
  • n — the number of monthly instalments

The final × (1 + i) reflects instalments invested at the start of each month. The first-year tax saving is computed separately: your first 12 instalments (capped at ₹1,50,000) are run through the full old-regime slab calculation at your income — the same method as our tax saving calculator.

How to use this calculator

  1. Enter the monthly SIP amount. ₹12,500 a month exactly fills the ₹1,50,000 annual 80C ceiling.
  2. Set the expected annual return. Equity funds have historically delivered 10–14% over long periods; 12% is a common planning assumption, not a promise.
  3. Choose the investment period — the slider starts at 3 years because of the statutory lock-in.
  4. Enter your annual income so the calculator can work out the first-year 80C tax saving at your actual slab.

The results split the corpus into amount invested and expected returns, alongside the first-year tax saved.

A worked example

₹12,500 a month at 12% p.a. for 5 years, at a ₹15,00,000 income:

  • Invested: 60 instalments × ₹12,500 = ₹7,50,000
  • Expected returns: ₹2,81,080
  • Projected value: ₹10,31,080
  • First-year tax saved (80C, old regime): ₹46,800

At the three-year lock-in mark the corpus stands at about ₹5,43,846 on ₹4,50,000 invested — and every year of SIP after the first saves tax again, as long as you stay in the old regime.

₹12,500 a month at 12% p.a. — year by year

Horizon Invested Projected value
3 years (lock-in ends) ₹4,50,000 ₹5,43,846
5 years ₹7,50,000 ₹10,31,080
7 years ₹10,50,000 ₹16,49,737
10 years ₹15,00,000 ₹29,04,238

Monthly annuity-due convention at an assumed 12% p.a. — an illustration, not a forecast. ELSS returns are market-linked and can be higher or lower; past performance does not guarantee future results.

ELSS questions, answered

Quick answers on the lock-in, taxation at exit and how ELSS compares with other 80C routes.