# Daily Review Dashboard :::info ## Daily Review Dashboard - Main Ctr ::: In this dashboard all the things about NPS comes like buyer, non-buyer. There are lot of metrics/measures based on NPS in this dashboard under a listing named as - Dealer Transformation Process Metrics - WTD **Week definition:** Week starts from Friday and ends on Thursday. This is applicable for calculation of all parameters ![](https://hackmd.io/_uploads/BJT0tjA16.png) ![](https://hackmd.io/_uploads/rkc6YoAJ6.png) The Measures are as follows - Dealer -> Dealer id-Name of Dealer ### NB NPS (Non Buyer Net Promoter Score) **Definition:** All individual customers who don't have invoice ID within 24 hours of enquiry date are eligible for NB NPS calling. :::success NB NPS Due -> Non Buyer(NPS) calling due NB NPS Done -> Non Buyer(NPS) calling done NB NPS Contact% -> NB NPS with Rating -> NB NPS Adh% -> Adherence Input Quality NB NPS -> ::: |Metric |DAX | |------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |NB NPS Due -> Non Buyer(NPS) calling due |NB NPS Due =<br>VAR result= calculate(distinctcount(FactNPSDetail[enquiry_id]))<br>return IF(ISBLANK(result),0,result) | |NB NPS Done -> Non Buyer(NPS) calling done|NB NPS Done =<br>VAR result=calculate(distinctcount(FactNPSDetail[enquiry_id]),FactNPSDetail[Status]="Done")<br>return IF(ISBLANK(result),0,result) | |NB NPS Contact% -> |NB NPS Contact % = DIVIDE([NB NPS Done],[NB NPS Due],BLANK()) | |NB NPS with Rating -> |NB NPS Done with Rating = calculate(DISTINCTCOUNT(FactNPSDetail[enquiry_id]),NOT(ISBLANK(FactNPSDetail[rating]))) | |NB NPS Adh% -> Adherence |NB NPS Adh% = DIVIDE([NB NPS Done with Rating],[NB NPS Due]) | |Input Quality NB NPS -> |Input quality - NB NPS =<br>SWITCH(TRUE(),<br>[NB NPS Done with Rating]=0,"No Data",<br>[Total NPS Score]>=80,"GRADE 1",<br>[Total NPS Score]>=50,"GRADE 2",<br>[Total NPS Score]<50 && [Total NPS Score]>=0,"GRADE 3")| **NB NPS Due Date:** Enquiry Date + 1 day **Ex:** For Week 49 - Duration : 26 Feb 21 to 04 Mar 21, Enquiries generated between 25 Feb 21 and 3 Mar 21 are due for NB NPS calling **Quality Grading Calculation:** **Base:** Only NB NPS calls with rating are considered for this calculation. Grading is based on 3 scores **Total NB NPS Scores** = Score 1 + Score 2 + Score 3 ![](https://hackmd.io/_uploads/B1wmJgye6.png) **Grading Criteria**: Grade 1 : Total NB NPS Scores >= 80 Grade 2 : Total NB NPS Scores > = 50 Grade 3 : Total NB NPS Scores < 50 & Total NB NPS Scores >= 0 No Data : NB NPS Done with Rating = 0 ### Buyer PSF (Buyer Post Sales Feedback) **Definiton**: All individual customers with invoice ID are eligible for PSF calling. :::success Buyer PSF Due -> PSF calling Due Buyer PSF Done -> PSF calling Done Buyer PSF Contact% -> division of PSF done & PSF due PSF with Rating -> PSF calling with rating Buyer PSF Adh% -> division of PSF with Rating & PSF due Input Quality PSF -> Quality Grading ::: |Metric |DAX | |----------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |Buyer PSF Due -> PSF calling Due |Buyer PSF Due =<br>var result=DISTINCTcount(FactPSFDetail[invoice_id])<br>return IF(ISBLANK(result),0,result) | |Buyer PSF Done -> PSF calling Done|Buyer PSF Done =<br>var result=calculate(DISTINCTcount(FactPSFDetail[invoice_id]),FactPSFDetail[Status]="Done")<br>return IF(ISBLANK(result),0,result) | |Buyer PSF Contact% -> |Buyer PSF Contact % \= DIVIDE([Buyer PSF Done],[Buyer PSF Due],BLANK()) | |PSF with Rating -> |PSF Done with Rating = calculate(DISTINCTCOUNT(FactPSFDetail[invoice_id]),NOT(ISBLANK(FactPSFDetail[rating]))) | |Buyer PSF Adh% -> |Buyer PSF Adh% = DIVIDE([PSF Done with Rating],[Buyer PSF Due]) | |Input Quality PSF -> |Input quality - PSF =<br>SWITCH(TRUE(),<br>[PSF Done with Rating]=0,"No Data",<br>[Total PSF Score]>=80,"GRADE 1",<br>[Total PSF Score]>=50,"GRADE 2",<br>[Total PSF Score]<50 && [Total NPS Score]>=0,"GRADE 3")| **PSF Due Date:** Invoice Date + 7 days Ex: For Week 49 - Duration : 26 Feb 21 to 04 Mar 21, Invoices created between 19 Feb 21 and 25 Feb 21 are due for PSF calling. **Quality Grading Calculation:** **Base:** Only PSF calls with rating are considered for this calculation. Grading is based on 3 scores. **Total Buyer PSF Scores** = Score 1 + Score 2 + Score 3 ![](https://hackmd.io/_uploads/Sk0PJ2C1p.png) **Grading Criteria:** Grade 1 : Total Buyer PSF Scores >= 80 Grade 2 : Total Buyer PSF Scores > = 50 Grade 3 : Total Buyer PSF Scores < 50 & Total Buyer PSF Scores >= 0 No Data : Buyer PSF Done with Rating = 0 ### CLF (Closed Loop Feedback) **Definition:** CLF score is calculated on a daily basis for each dealer based on the below logic and the average of the Total CLF score is shown for the selected week :::success CLF Done -> CLF Adh% -> Input Quality CLF -> ::: |Metric |DAX | |--------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |CLF Done -> |No of CLF Meetings =<br>VAR Result= count(FactCLF[meeting_date])<br>return IF(ISBLANK(Result),0,Result) | |CLF Adh% -> |CLF Adherence % = DIVIDE([No of CLF Meetings],[No of Workdays],BLANK()) | |Input Quality CLF ->|Input quality - CLF =<br>SWITCH(TRUE(),<br>[No of CLF Meetings]=0,"No Data",<br>[Total CLF Score]>=80,"GRADE 1",<br>[Total CLF Score]>=50,"GRADE 2",<br>[Total CLF Score]<50 && [Total CLF Score]>=0,"GRADE 3")| **Quality Grading Calculation:** **Total CLF Score** = Score 1 + Score 2 ![](https://hackmd.io/_uploads/SyiTxgJxa.png) **Grading Criteria:** Grade 1 : Total CLF Scores >= 80 Grade 2 : Total CLF Scores > = 50 Grade 3 : Total CLF Scores < 50 & Total NB NPS Scores >= 0 No Data : No CLF Meeting ### FnC (Follow up & Conversion) **Definition:** All individual customers who don't have invoice ID within 24 hours of enquiry date are eligible for FNC calling :::success FnC Due -> FnC Done -> FnC Contact% -> ::: |Metric |DAX | |---------------|------------------------------------------------------------------------------------------------------------------------------------------| |FnC Due -> |FnC Due =<br>VAR result=count(FactFNCDetail[enquiry_date])<br>return IF(ISBLANK(result),0,result) | |FnC Done -> |FnC Done =<br>VAR result=calculate(count(FactFNCDetail[enquiry_date]),FactFNCDetail[Status]="Done")<br>return IF(ISBLANK(result),0,result)| |FnC Contact% ->|FnC Contact % = DIVIDE([FnC Done],[FnC Due],BLANK()) | **FNC Due Date:** Enquiry Date + 1 day Ex: For Week 49 - Duration : 26 Feb 21 to 04 Mar 21, Enquiries generated between 25 Feb 21 and 3 Mar 21 are due for FNC calling. ## NB NPR (Non Buyer Net Promoter Recovery) **Definition:** Non Buyer Recovered after days/months through different recovery sources; HO, App and Retail. Retail will have the highest preference, followed by HO, then app. :::success NB NPR Due -> NB NPR Done -> NB NPR Contact % -> NBNPR App Recovery Due -> NBNPR App Recovery Done -> NBNPR App Recovery% -> HO NBNPR App Recovery Due -> HO NBNPR App Recovery Done -> HO NBNPR App Recovery % -> ::: | DAX | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | NB NPR Due =<br>VAR result= calculate(count(FactNPSDetail[enquiry_id]),NOT(FactNPSDetail[rating] in {9,10}),NOT((FactNPSDetail[enquiry_id] IN {BLANK()})),FactNPSDetail[rating]<>BLANK())--(FactNPSDetail[enquiry_id]<>BLANK()))<br>return IF(ISBLANK(result),0,result) | | NB NPR Done =<br>VAR result=calculate(count(FactNPSDetail[enquiry_id]),FactNPSDetail[recovery_status_bucket]="Recovered",NOT(FactNPSDetail[rating] in {9,10, BLANK()}),NOT((FactNPSDetail[enquiry_id] IN {BLANK()})))<br>return IF(ISBLANK(result),0,result) | | NB NPR Contact % = DIVIDE([NB NPR Done],[NB NPR Due]) | | NBNPR App Recovery Due =<br>VAR result= calculate(distinctcount(FactNPSDetail[enquiry_id]), FactNPSDetail[source_from]= "ems",NOT(FactNPSDetail[rating]) in {9,10},NOT(FactNPSDetail[enquiry_id]) IN {BLANK()},<br>FactNPSDetail[rating]<>BLANK())--(FactNPSDetail[enquiry_id]<>BLANK())<br>RETURN IF(ISBLANK(result),0,result)<br>\--,FactNPSDetail[recovery_through_app]= "no" | | NBNPR App Recovery Done =<br>VAR result= calculate(distinctcount(FactNPSDetail[enquiry_id]), FactNPSDetail[source_from]= "ems",FactNPSDetail[recovery_through_app]= "yes",NOT(FactNPSDetail[rating]) in {9,10},NOT(FactNPSDetail[enquiry_id]) IN {BLANK()},<br>FactNPSDetail[rating]<>BLANK())--(FactNPSDetail[enquiry_id]<>BLANK())<br>RETURN IF(ISBLANK(result),0,result) | | NBNPR App Recovery% = var result_=DIVIDE([NBNPR App Recovery Done],[NBNPR App Recovery Due],BLANK())<br>RETURN IF(ISBLANK(result_),0,result_) | | HO NBNPR App Recovery Due =<br>VAR result= calculate(distinctcount(FactHO_NBNPSDetail[enquiry_id]),NOT(FactHO_NBNPSDetail[review]) in {9,10},NOT(FactHO_NBNPSDetail[enquiry_id]) IN {BLANK()},FactHO_NBNPSDetail[review] <> BLANK())<br>RETURN IF(ISBLANK(result),0,result) | | HO NBNPR App Recovery Done =<br>VAR result= calculate(distinctcount(FactHO_NBNPSDetail[enquiry_id]),FactHO_NBNPSDetail[recovery_through_app]="yes",NOT(FactHO_NBNPSDetail[review]) in {9,10},<br>NOT(FactHO_NBNPSDetail[enquiry_id]) IN {BLANK()},FactHO_NBNPSDetail[review] <> BLANK())<br>RETURN IF(ISBLANK(result),0,result) | | HO NBNPR App Recovery% = var result_=DIVIDE([HO NBNPR App Recovery Done],[HO NBNPR App Recovery Due],BLANK())<br>RETURN IF(ISBLANK(result_),0,result_) | **NB NPR Due Date:** Enquiry Date + 1 day Ex: For Week 49 - Duration : 26 Feb 21 to 04 Mar 21, Enquiries generated between 25 Feb 21 and 3 Mar 21 are due for FNC calling. ### Buyer NPR (Buyer Net Promoter Recovery) **Definition:** Buyer Recovered after days/months through different recovery sources; HO, App and Retail. Retail will have the highest preference, followed by HO, then app. :::success Buyer NPR Due -> Buyer NPR Done -> Buyer NPR Contact% -> Buyer App Recovery Due -> Buyer App Recovery Done -> Buyer app Recovery % -> HO Buyer NPR App Recovery Done -> HO Buyer NPR App Recovery% -> ::: | DAX | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Buyer NPR Due =<br>VAR result= calculate(count(FactPSFDetail[invoice_id]),NOT(FactPSFDetail[rating] in {9,10}),NOT((FactPSFDetail[invoice_id] IN {BLANK()})),<br>FactPSFDetail[rating]<>BLANK())--(FactNPSDetail[enquiry_id]<>BLANK())<br>return IF(ISBLANK(result),0,result) | | Buyer PSF NPR Done =<br>var result=calculate(count(FactPSFDetail[invoice_id]),NOT(FactPSFDetail[invoice_id]) IN {BLANK()},FactPSFDetail[recovery_status_bucket] = "Recovered", FactPSFDetail[rating]<9, FactPSFDetail[rating]<>BLANK())<br>return IF(ISBLANK(result),0,result) | | Buyer NPR Contact % = DIVIDE([Buyer PSF NPR Done],[Buyer NPR Due]) | | Buyer NPR App Recovery Due =<br>VAR result= calculate(distinctcount(FactPSFDetail[invoice_id]),FactPSFDetail[source_from]="ems",NOT(FactPSFDetail[rating] in {9,10}),NOT((FactPSFDetail[invoice_id] IN {BLANK()})),<br>FactPSFDetail[rating]<>BLANK())--(FactNPSDetail[enquiry_id]<>BLANK())<br>return IF(ISBLANK(result),0,result) | | Buyer NPR App Recovery Done =<br>VAR result= calculate(distinctcount(FactPSFDetail[invoice_id]), FactPSFDetail[source_from]= "ems",FactPSFDetail[recovery_through_app]= "yes",NOT(FactPSFDetail[rating]) in {9,10},NOT(FactPSFDetail[invoice_id]) IN {BLANK()},<br>FactPSFDetail[rating]<>BLANK())--(FactNPSDetail[enquiry_id]<>BLANK())<br>RETURN IF(ISBLANK(result),0,result) | | Buyer App Recovery % = var result_=DIVIDE([Buyer NPR App Recovery Done],[Buyer NPR App Recovery Due],BLANK())<br>RETURN IF(ISBLANK(result_),0,result_) | | HO Buyer NPR App Recovery Due =<br>VAR result= calculate(distinctcount(FactHO_PSFDetail[enquiry_id]),NOT(FactHO_PSFDetail[review]) in {9,10},NOT(FactHO_PSFDetail[enquiry_id]) IN {BLANK()},FactHO_PSFDetail[review] <> BLANK())<br>RETURN IF(ISBLANK(result),0,result) | | HO Buyer NPR App Recovery Done =<br>VAR result= calculate(distinctcount(FactHO_PSFDetail[enquiry_id]),FactHO_PSFDetail[recovery_through_app]="yes",NOT(FactHO_PSFDetail[review]) in {9,10},<br>NOT(FactHO_PSFDetail[enquiry_id]) IN {BLANK()},FactHO_PSFDetail[review] <> BLANK())<br>RETURN IF(ISBLANK(result),0,result) | | HO Buyer NPR App Recovery% = var result_=DIVIDE([HO Buyer NPR App Recovery Done],[HO Buyer NPR App Recovery Due],BLANK())<br>RETURN IF(ISBLANK(result_),0,result_) | **Buyer NPR Due Date:** Enquiry Date + 7 days Ex: For Week 49 - Duration : 26 Feb 21 to 04 Mar 21, Invoices created between 19 Feb 21 and 25 Feb 21 are due for Buyer NPR calling. . ### CE (Customer Episodes) **Definition :** :::success CE Mapping Due -> CE Mapping Done -> CE Adh% -> ::: | DAX | | --------------------------------------------------------------------------------------------------------- | | CE Mapping Due =<br>VAR Result= sum(FactCESummary[TotalEnquiries])<br>return IF(ISBLANK(Result),0,Result) | | CE Mapping Done =<br>VAR Result= sum(FactCESummary[TotalCEMapped])<br>return IF(ISBLANK(Result),0,Result) | | CE Adherence % = DIVIDE([CE Mapping Done],[CE Mapping Due],BLANK()) | ### ECR () **Definition:** :::success ECR Plan -> ECR Act -> ECR Ach% -> ::: | DAX | | --------------------------------------------------------------------- | | Retail Plan(ECR Plan) = sum(FactRetailMonthPlan[day_plan]) | | EC Retail(EC Retail) = [Counter Retail] + [AD EC Retail]+[MBO Retail] | | Retail Ach %(ECR Ach%) = DIVIDE([EC Retail],[Retail Plan],0) | ### DSE **Definition:** :::success #Active DSEs -> #DSEs Ach Plan -> ::: ### Training **Definition:** :::success Training Due -> Training Done -> :::