Credit Score

What is SMA in CIBIL Report - Meaning, Types & Importance

PFL Logo
Poonawalla Fincorp Team
30/6/25 6:35 AM  | 3 Minutes
 |
Table of Content

SMA or Special Mention Accounts is a classification of loan accounts showing early signs of financial stress. SMA in CIBIL report is a direct repercussion of a delayed or missed payment. Banks and NBFCs use this classification to flag accounts that are at risk of turning into potential Non-Performing Assets (NPAs). These accounts are classified according to the number of days an account is overdue. Read this blog as we delve deeper into the underlying importance of SMA and how it affects your creditworthiness and loan approvals.

Meaning of SMA in CIBIL Report
 

SMA In CIBIL Report

If you encounter a SMA in your CIBIL report, the most likely reason is that you have one or more missed payment. Banks and NBFCs in India classify accounts with unpaid dues for more than 90 days as NPAs. An SMA status shows that you have already missed payment and depending on the number of days for which the payment is overdue, your SMA status can be labelled from 0 to 2. The classification system was introduced by the Reserve Bank of India for lenders to identify accounts under financial distress with a potential to turn into an NPA. 

Types of Special Mention Accounts

Depending on the number of days since payment is overdue, the RBI classifies Special Mention Accounts into three main categories as follows:

Category

Meaning

SMA - 0

Principal or interest amount overdue for less than a month (30 days).

SMA - 1

Principal or interest amount overdue for more than a month but less than 2 months (31 – 60 days).

SMA - 2

Principal or interest amount overdue for more than 2 months but less than 3 months (61 – 90 days)

 

In addition, an SMA-NF category indicates non-financial stress factors affecting an asset. SMA 0 to 2 are clear signs of financial distress in an account and are early indicators of an account turning into an NPA.

How SMA in CIBIL Report Affects Loan Approval

An SMA status in your CIBIL report is detrimental to your creditworthiness. It shows that you have missed timely payments – the most important factor determining your CIBIL score. Depending on the SMA category, these accounts in your CIBIL report can impact your credit score.

This is why it is always good practice to periodically check CIBIL score to identify SMA in CIBIL report; particularly if you have missed payments in the recent past. A low CIBIL score due to SMA status automatically leads to reduced creditworthiness and lower chances of loan approval. Here are some other direct and indirect ways in which SMA in CIBIL impacts loan approval.

•    Reduced borrowing capacity
•    Higher interest rates
•    Unfavourable loan terms & conditions
•    Stricter scrutiny of credit report
•    Increased changes of rejection

How to Clear SMA in CIBIL Report

Missing a payment due date is only human. Even the most financially responsible and disciplined individuals sometimes miss a payment. On the brighter side, it is possible to mitigate the impact of an SMA on your credit report by adopting the following best practices.

Clear Overdue Payments

The first step to remove SMA status from your loan accounts is to clear the dues. Identify all overdue payments and make it a priority to clear the dues without any further delay. This will not only mitigate the risk of aggravated impacts of extreme SMA status but also help remove SMA from CIBIL report.

Plan Future Repayments

Consider your total current monthly repayment amount for all active loan and credit card accounts. Budget your spending and personal financial obligations to plan a future repayment schedule and budget. Stick to this schedule and budget religiously. 

Ensure Timely Repayments

Make it a habit to repay all dues on time or before the due date. Setting up autopay can be helpful under such circumstances. This way, you will never have to remember a due date and the repayment amount will be automatically deducted from your bank account on the due date.

Reach Out to Lenders

Even if you are unable to make an overdue payment immediately, it is advisable to communicate with your lender. Under ideal circumstances, lenders can offer loan restructuring to help you repay your dues while facing financial strain.

Check CIBIL Score

Monitoring your CIBIL score is an undermined practice to stay on top of your credit game. Make it a habit to check CIBIL score every 30 to 45 days. You can easily check your latest CIBIL score for free on the Poonawalla Fincorp website. Check for DPDs in CIBIL report, unsolicited loan accounts or SMA statuses in your credit report. Raise a dispute on the official CIBIL website in case of a discrepancy. 

To Conclude

The Reserve Bank of India introduced the SMA classification system to flag overdue accounts as Special Mention Accounts (SMAs). Lenders use the SMA classification system to detect overdue loan accounts with potential to turn into a Non-Performing Asset (NPA). Having an SMA status in your loan/credit card accounts has an impending impact on your credit score and can lead to rejection of loan and credit card applications. This is why it is important to make timely repayments and borrow responsibly. In addition, if you have an SMA status in your credit report, clear all dues as fast as possible and make it a habit to make timely repayments for all future loans.

Frequently Asked Questions

What is SMA in CIBIL report?
An SMA status in CIBIL report shows that you have missed payment due date. Depending on the number of days past due (DPD), your SMA status can change from SMA-0, SMA-1 or SMA-2. 

Does SMA affect CIBIL score?
Yes. Any missed payment affects your CIBIL score adversely and must be addressed immediately to prevent further impact. 

How can I remove SMA from CIBIL score?
The only way to remove SMA from CIBIL report is to clear all overdue payments immediately. An unattended SMA status in your CIBIL report can easily lead your account to be classified as a Non-Performing Asset (NPA) leading to aggravated impact on your CIBIL score and rejection of future loan applications.

About the Author

PFL Logo
Poonawalla Fincorp Team
Our team of expert writers and editors are passionate about providing authentic and valuable information on finance. Our aim is to simplify financial and finance-related concepts. We strive to help our readers become more aware and empowered to make informed financial decisions.
Disclaimer

We take utmost care to provide information based on internal data and reliable sources. However, this article and associated web pages provide generic information for reference purposes only. Readers must make an informed decision by reviewing the products offered and the terms and conditions. Loan disbursal is at the sole discretion of Poonawalla Fincorp.

*Terms and Conditions apply
An error occurred while processing the template.
The following has evaluated to null or missing:
==> width  [in template "20096#20121#1665161" at line 70, column 37]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: ${width}  [in template "20096#20121#1665161" at line 70, column 35]
----
1<#assign baseUrl= themeDisplay.getPortalURL() > 
2<#assign groupId = themeDisplay.getScopeGroupId() > 
3<#assign blogService = serviceLocator.findService("com.liferay.blogs.service.BlogsEntryLocalService")> 
4<#assign assetCategory = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
5<#assign url = themeDisplay.getURLCurrent()?substring(7)?trim!"" /> 
6<#if url = ""> 
7<#assign url="/personal-loan/top-ideas-to-celebrate-diwali-festival"> 
8</#if> 
9<#assign blogEntry = "" /> 
10<#attempt> 
11<#assign blogEntry = blogService.getEntry(groupId, url)!""> 
12<#recover> 
13<#assign blogEntry = "" /> 
14</#attempt> 
15<#assign blogcontent = "Default blog content"> 
16<#assign title = "Default title" > 
17<#assign description = "Default description" > 
18<#assign createDate = "Default createDate"> 
19<#assign modifiedDate = "Default modifiedDate"> 
20<#assign coverImageUrl = "Default url"> 
21<#if blogEntry?has_content && blogEntry?is_hash> 
22<#assign blogcontent = blogEntry.content > 
23<#assign title = blogEntry.title!"Default title" > 
24<#assign description = blogEntry.description !"Default description" > 
25<#assign createDate = blogEntry.createDate?datetime?iso("GMT+05:30") !"Default createDate"> 
26<#assign modifiedDate = blogEntry.modifiedDate?datetime?iso("GMT+05:30") !"Default modifiedDate"> 
27<#assign coverImageUrl = blogEntry.getCoverImageURL(themeDisplay) !"Default url"> 
28<#assign caption = blogEntry.coverImageCaption ! "Caption"> 
29 
30<#if caption?contains("Caption")> 
31<#assign width = "1200"> 
32<#assign height = "675"> 
33<#else> 
34<#assign width = caption?keep_before('*')?replace("<p>","")?trim ! "1200"> 
35<#assign height = caption?keep_after('*')?replace("</p>","")?trim ! "675"> 
36</#if> 
37 
38</#if> 
39<script type="application/ld+json" id="json-ld"> 
40
41    "@context":"http://schema.org", 
42    "@type":"Article", 
43    "url":"${themeDisplay.getPortalURL()}${themeDisplay.getURLCurrent()}", 
44    "articleBody":"${blogcontent?replace("<[^>]*>","","r")?replace("/[^a-zA-Z0-9 ]/g","")?replace('"',"")}", 
45    "articleSection":"${themeDisplay.getURLCurrent()?split('/')[2]?replace("-"," ")?capitalize}", 
46    "mainEntityOfPage":{ 
47        "@type":"WebPage", 
48        "@id":"${themeDisplay.getPortalURL()}${themeDisplay.getURLCurrent()}" 
49        }, 
50        "headline":"${title}", 
51        "description":"${description}", 
52        "datePublished":"${createDate}", 
53        "dateModified":"${modifiedDate}", 
54        "publisher":{ 
55            "@type":"Organization", 
56            "name":"Poonawalla Fincorp Limited", 
57            "logo":{ 
58                "@type":"ImageObject", 
59                "url":"https://poonawallafincorp.com/documents/d/poonawalla-fincorp/logo", 
60								"width":"125", 
61                "height":"26" 
62                }}, 
63                "author": { 
64                   "@type": "Organization", 
65                   "name": "Poonawalla Fincorp Limited" 
66                    }, 
67                    "image":{ 
68                        "@type":"ImageObject", 
69                        "url":"${coverImageUrl}", 
70                        "width": "${width}px", 
71                        "height":"${height}px" 
72
73
74</script> 
75<style nonce="2D0oPEosbPtmhwpQq22tPg==" nonce="SPiOUHjpip8198n4uNoZFQ=="> 
76 #waitd{ 
77		color:red; 
78
79 .waitd{ 
80		color:red; 
81
82</style> 
83<div class="article-blog_feature"> 
84        <img class="mob-hide" src="https://poonawallafincorp.com/documents/d/poonawalla-fincorp/article06-png" alt="Personal Loan Banner" width="100%" height="auto" loading="lazy" /> 
85        <img class="d-none mob-show" src="https://poonawallafincorp.com/documents/d/poonawalla-fincorp/marticle06-png" alt="Personal Loan Banner" width="100%" height="auto" loading="lazy" /> 
86        <div class="article-blog_overlay container-fluid"> 
87          <div class="blog-feature_caption">           
88 <h3><#if (Heading.getData())?? && !(Heading.getData()?lower_case?contains("<script"))> 
89	${Heading.getData()} 
90</#if></h3> 
91            <div class="loanAmount"> 
92              <div class="loanAmountLimit"> 
93               Get Upto 
94<div>₹<#if (GetUptoAmount.getData())?? && !(GetUptoAmount.getData()?lower_case?contains("<script"))> 
95	${GetUptoAmount.getData()} 
96</#if><span>lakhs</span></div> 
97              </div> 
98              <div class="loanAmountLimit"> 
99                Starting at 
100                <div><#if (Text53388883.getData())?? && !(Text53388883.getData()?lower_case?contains("<script"))> 
101	${Text53388883.getData()} 
102</#if><span> % </span></div> 
103              </div> 
104            </div> 
105           <a href="${ApplyNowLinkPage.getFriendlyUrl()}" title="Apply-Loan">  <button class="btn btnWhite apply">Apply Now</button></a> 
106          </div> 
107        </div> 
108      </div>			 
109	<div class="article-blog_inputBox"> 
110  <div class="article-blog_inputContent">        
111  <div class="emailBox"> 
112    <label> Like what you read? <br>  
113      Stay ahead with finance insights</label> 
114    <div class="emailInput position-relative"> 
115     <input class="form-control" type="text" placeholder="e-mail address" id="emailID" maxlength="50"/> 
116    <img src="https://poonawallafincorp.com/documents/d/poonawalla-fincorp/rightarrow" alt="rightArrow" onclick="sendSubcription()"/> 
117    </div> 
118		<span id="success_req" style="display:none"> 
119	 <label class="mt-2 position-relative top-0 subscribeMsg"><span class="text-green mt-2"> 
120        <img src="https://poonawallafincorp.com/documents/d/poonawalla-fincorp/greencheck" class="mr-2">  Thank you for subscribing!</img></label> 
121	  </span> 
122		<div class="emailInput position-relative waitd" id="waitd" style="display:none">Please wait...</div> 
123	   <div class="emailInput position-relative" id="success_suscrib" style="display:none">Email Already Suscribed!</div> 
124	   <div class="emailInput position-relative" id="error_val" style="display:none">Enter Valid Email Id</div> 
125		 <div class="emailInput position-relative" id="error_req" style="display:none">Enter Your Email Id</div>  
126</div></div></div></div>		 
127 
128<script> 
129var baseUrlNew = "${baseUrl}"; 
130var _token; 
131function getTokens() { 
132    $(".loader").css("display", "block"); 
133    const myHeaders = new Headers(); 
134    myHeaders.append("Content-Type", "application/x-www-form-urlencoded"); 
135    myHeaders.append("Cookie", "JSESSIONID=E6176249B705404196C7DC2B93619CA8"); 
136    const urlencoded = new URLSearchParams(); 
137    urlencoded.append("client_id", "id-e87ee6b8-15d8-9cfb-e4e8-ee81957e1da"); 
138    urlencoded.append("client_secret", "secret-39e1d060-4ea7-af66-fe6b-63742d41d920"); 
139    urlencoded.append("grant_type", "client_credentials"); 
140    const requestOptions = { 
141        method: "POST", 
142        headers: myHeaders, 
143        body: urlencoded, 
144        redirect: "follow" 
145    }; 
146    fetch(baseUrlNew+"/o/oauth2/token", requestOptions) 
147        .then((response) => response.text()) 
148        .then((result) => { 
149            let res = JSON.parse(result); 
150            var btok = res.access_token; 
151            _token = btok; 
152						}) 
153        .catch((error) => { 
154            $(".loader").css("display", "none"); 
155            console.error(error); 
156        }); 
157
158//getTokens(); 
159function handleEnterKey(event) { 
160      if (event.keyCode === 13) { 
161        sendSubcription(); 
162
163
164 
165    const emailInput = document.getElementById('emailID'); 
166    emailInput.addEventListener('keydown', handleEnterKey); 
167	function sendSubcription() { 
168			var emailId=$('#emailID').val(); 
169		$("#success_req").css("display","none"); 
170		$("#success_suscrib").css("display","none"); 
171	 
172	//const emailRegex = /^[a-zA-Z0-9._%+-]+@gmail\.com$/; 
173	const emailRegex = /^[a-zA-Z0-9._%+-]+@(gmail\.com|yahoo\.com|yopmail\.com|outlook\.com|[a-zA-Z0-9.-]+\.[a-zA-Z]{2,})$/; 
174   if(emailRegex.test(emailId)){ 
175		  emailInput.classList.remove('danger'); 
176		 $("#error_val").css("display","none"); 
177		 $("#error_req").css("display","none"); 
178	 }else{ 
179		 if(emailId ==""){	 
180			 emailInput.classList.add('danger'); 
181		  $("#error_val").css("display","none"); 
182			$("#error_req").css("display","block"); 
183			return; 
184	   }else{ 
185			 emailInput.classList.add('danger'); 
186			  $("#error_val").css("display","block"); 
187			  $("#error_req").css("display","none"); 
188			 return; 
189
190		   
191
192	//	return; 
193		$("#waitd,.waitd").css("display","block"); 
194     var apiUrl =baseUrlNew+"/o/subscription/get-lead-by-email?email="+emailId; 
195          $.ajax({ 
196            url: apiUrl, 
197            type: 'GET',					  
198            dataType: 'json', 
199					//	headers: { 
200        //'Authorization': 'Bearer ' + _token 
201       // }, 
202            success: function(data) { 
203                 emailInput.classList.remove('danger'); 
204			           $("#error_val").css("display","none"); 
205			           $("#error_req").css("display","none"); 
206							   //$("#success_req").css("display","block"); 
207							if(data && data.length>0){ 
208								$("#success_suscrib").css("display","block"); 
209								$("#waitd,.waitd").css("display","none"); 
210								$("#emailID").val(""); 
211								setTimeout(()=>{$("#success_suscrib").css("display","none"); 
212								$("#waitd").css("display","none"); 
213								},2000) 
214								return; 
215							}else{ 
216								$("#success_suscrib").css("display","none"); 
217								newSuscribed(emailId); 
218
219                 $.each(data, function(index, loan) { 
220                    $('#loanList').append($('<option></option>').attr('value', loan.lId).text(loan.loanName)); 
221                }); 
222            }, 
223						 
224                                    complete: function(){ 
225																		//	$("#waitd,.waitd").css("display","none"); 
226                                    }, 
227            error: function(xhr, status, error) { 
228
229        }); 
230
231	function newSuscribed(emailId){    	 
232	var apiUrl = baseUrl1+"/o/subscription/capture-lead?Attribute=EmailAddress&Value="+emailId;  
233    const myHeaders = new Headers(); 
234//myHeaders.append("Authorization", 'Bearer ' + _token); 
235myHeaders.append("Cookie", "COOKIE_SUPPORT=true; GUEST_LANGUAGE_ID=en_US; JSESSIONID=077E178F6946DD868149B7A58A993FBB"); 
236 
237const requestOptions = { 
238  method: "POST", 
239  headers: myHeaders, 
240  redirect: "follow" 
241}; 
242 
243fetch(apiUrl, requestOptions) 
244  .then((response) => response.text()) 
245  .then((data) => {	 
246	if (JSON.parse(data)?.Status == "Success") { 
247                localStorage.setItem("submitApi", emailId); 
248                sendSubcriptionAgain(emailId) 
249                    .then((res) => { 
250                        return true; 
251                    }) 
252                    .catch((err) => { 
253                        console.log(err); 
254                    }) 
255
256            else { 
257 
258
259	}) 
260	.catch((error)=>{ 
261	console.warn(error); 
262	}) 
263	 
264
265function increaseTimeByFiveMinutes() { 
266    var currentDate = new Date(); // Get the current date and time 
267    currentDate.setMinutes(currentDate.getMinutes() + 5); // Increase current time by 5 minutes 
268 
269    // Format the date and time as "YYYY-MM-DD HH:mm:ss" 
270    var formattedDateTime = currentDate.toISOString().replace(/T/, ' ').replace(/\..+/, ''); 
271 
272    return formattedDateTime; 
273
274 
275 
276	function passLeadGenerate(prospectId, emailId) { 
277   
278     
279 
280	var activitnn= "News Letter"; 
281   
282var apiUrl = baseUrl1 + "/o/subscription/create-subscription-lead?RelatedProspectId=" + encodeURIComponent(prospectId.trim()) + 
283"&ActivityNote=" + encodeURIComponent(activitnn) + "&ActivityDateTime=" + encodeURIComponent(increaseTimeByFiveMinutes()) + 
284"&ActivityEvent=258"+"&ProcessFilesAsync=true"; 
285  
286    const myHeaders = new Headers(); 
287//myHeaders.append("Authorization", 'Bearer ' + _token); 
288myHeaders.append("Cookie", "COOKIE_SUPPORT=true; GUEST_LANGUAGE_ID=en_US; JSESSIONID=077E178F6946DD868149B7A58A993FBB"); 
289 
290const requestOptions = { 
291  method: "POST", 
292  headers: myHeaders, 
293  redirect: "follow" 
294}; 
295 
296fetch(apiUrl, requestOptions) 
297  .then((response) => response.text()) 
298  .then((data) => { 
299		$("#success_req").css("display","block"); 
300		$("#waitd,.waitd").css("display","none"); 
301					$("#emailID").val(""); 
302					setTimeout(()=>{ 
303					$("#success_req").css("display","none"); 
304					},2000); 
305	}) 
306	.catch((error)=>{ 
307	console.warn(error); 
308	}) 
309    
310
311	 
312	function sendSubcriptionAgain(EmailId) { 
313			var emailId=EmailId; 
314		$("#success_req").css("display","none"); 
315		$("#success_suscrib").css("display","none"); 
316	 
317		//const emailRegex = /^[a-zA-Z0-9._%+-]+@gmail\.com$/; 
318		const emailRegex = /^[a-zA-Z0-9._%+-]+@(gmail\.com|yahoo\.com|yopmail\.com|outlook\.com|[a-zA-Z0-9.-]+\.[a-zA-Z]{2,})$/; 
319   if(emailRegex.test(emailId)){ 
320		  emailInput.classList.remove('danger'); 
321		 $("#error_val").css("display","none"); 
322		 $("#error_req").css("display","none"); 
323	 }else{ 
324		 if(emailId ==""){	 
325			 emailInput.classList.add('danger'); 
326		  $("#error_val").css("display","none"); 
327			$("#error_req").css("display","block"); 
328			return; 
329	   }else{ 
330			 emailInput.classList.add('danger'); 
331			  $("#error_val").css("display","block"); 
332			  $("#error_req").css("display","none"); 
333			 return; 
334
335		   
336
337	//	return; 
338	 
339    return new Promise((resolve, reject) => { 
340        $.ajax({ 
341             url: baseUrl1+"/o/subscription/get-lead-by-email?email="+emailId, 
342            type: 'GET', 
343           //	headers: { 
344           // 'Authorization': 'Bearer ' + _token 
345           //  }, 
346            dataType: 'json', 
347            success: function (data) { 
348                resolve(data); 
349                if (data && data?.length > 0) { 
350                    //	$("#success_suscrib").css("display","block"); 
351                    passLeadGenerate(data[0].ProspectID, emailId); 
352                } else { 
353                    $("#success_suscrib").css("display", "none"); 
354                    newSuscribed(emailId); 
355
356								$("#waitd ,.waitd").css("display","none"); 
357                $.each(data, function (index, loan) { 
358                    $('#loanList').append($('<option></option>').attr('value', loan.lId).text(loan.loanName)); 
359                }); 
360            }, 
361 
362            complete: function () { 
363            }, 
364            error: function (xhr, status, error) { 
365                reject(new Error("Error fetching data:", error)) 
366 
367
368        }); 
369    })	 
370
371		 
372</script> 
373 
374 
375 
376<#assign baseUrl= themeDisplay.getPortalURL() > 
377<#assign currentPageUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent()> 
378<#assign articles = []>  
379 
380 
381 
382<script type="application/ld+json"> 
383
384          "@context": "https://schema.org/",  
385          "@type": "BreadcrumbList",  
386          "itemListElement": [{ 
387            "@type": "ListItem",  
388            "position": 1,  
389            "name": "Home", 
390            "item": "${baseUrl}"   
391          },{ 
392            "@type": "ListItem",  
393            "position": 2,  
394            "name": "Blogs", 
395            "item": "${baseUrl}/blogs/all-blogs"   
396          },{ 
397            "@type": "ListItem",  
398            "position": 3,  
399            "name": "${themeDisplay.getURLCurrent()?split('/')[2]?replace("-"," ")?capitalize}", 
400            "item": "${themeDisplay.getPortalURL()}/blogs/${themeDisplay.getURLCurrent()?split('/')[2]}"   
401          },{ 
402            "@type": "ListItem",  
403            "position": 4,  
404            "name": "${title}", 
405            "item": "${themeDisplay.getPortalURL()}${themeDisplay.getURLCurrent()}"   
406          }] 
407
408    </script>