diff --git a/benchmarks/barrel_ecal/scripts/emcal_barrel_pions_analysis.cxx b/benchmarks/barrel_ecal/scripts/emcal_barrel_pions_analysis.cxx
index eef7ac6b4e877a3e3a85309b722a1b92805e0bf3..2be65740944a31e2912d27a44438bf38e8170c0c 100644
--- a/benchmarks/barrel_ecal/scripts/emcal_barrel_pions_analysis.cxx
+++ b/benchmarks/barrel_ecal/scripts/emcal_barrel_pions_analysis.cxx
@@ -41,7 +41,11 @@ void emcal_barrel_pions_analysis(const char* input_fname = "sim_output/sim_emcal
   std::string test_tag = "Barrel_emcal_pi0";
   //TODO: Change test_tag to something else
   std:string detector = "Barrel_emcal";
-  double resolutionTarget = 0.1;
+  //Energy resolution in teh barrel region(-1 < eta < 1)
+  // sigma_E / E = 12% / E^0.5 convoluted with 2%
+  // sigma_E / E = [ (0.12/E^0.5)^2 + 0.02^2]^0.5, with E in [GeV]
+  double thrown_energy = 5; // Current thrown energy, will need to grab from json file
+  double resolutionTarget = TMath::Sqrt(0.12 * 0.12 / thrown_energy + 0.02 * 0.02);
 
   eic::util::Test pi0_energy_resolution{
       {{"name", fmt::format("{}_energy_resolution", test_tag)},
@@ -195,18 +199,19 @@ void emcal_barrel_pions_analysis(const char* input_fname = "sim_output/sim_emcal
   c5->SaveAs("results/emcal_barrel_pions_pid.png");
   c5->SaveAs("results/emcal_barrel_pions_pid.pdf");
 
-  //Energy Resolution Work
+  //Energy Resolution Calculation
   auto hdE          = d2.Histo1D({"hdE",      "dE; dE[GeV]; Events",              20, -7.5, 7.5}, "dE");//changed from 100
   auto hdE_rel      = d2.Histo1D({"hdE_rel",  "dE Relative; dE Relative; Events", 20, -2, 2}, "dE_rel");//changed from 100
-  hdE_rel->Fit("gaus", "", "", -2,  2);
-  double* res       = hdE_rel->GetFunction("gaus")->GetParameters();
+  hdE->Fit("gaus", "", "", -2,  2);
+  double* res       = hdE->GetFunction("gaus")->GetParameters();
+  double sigmaOverE = res[2] / thrown_energy;
 
   //Pass/Fail
   
-  if (res[2] <= resolutionTarget) {
-    pi0_energy_resolution.pass(res[2]);
+  if (sigmaOverE <= resolutionTarget) {
+    pi0_energy_resolution.pass(sigmaOverE);
   } else {
-    pi0_energy_resolution.fail(res[2]);
+    pi0_energy_resolution.fail(sigmaOverE);
   }
   //std::printf("Energy Resolution is %f\n", res[2]);
 
@@ -216,6 +221,8 @@ void emcal_barrel_pions_analysis(const char* input_fname = "sim_output/sim_emcal
   hdE->GetYaxis()->SetTitleOffset(1.4);
   hdE->SetLineWidth(2);
   hdE->SetLineColor(kBlue);
+  hdE->GetFunction("gaus")->SetLineWidth(2);
+  hdE->GetFunction("gaus")->SetLineColor(kRed);
   hdE->DrawClone();
   cdE->SaveAs("results/emcal_barrel_pi0_dE.png");
   cdE->SaveAs("results/emcal_barrel_pi0_dE.pdf");