A system comprising: an implantable lead having electrodes (122, 124, 126, 132-138) configured to be located proximate to a heart, the electrodes (122, 124, 126, 132-138) defining a sensing vector through a region of interest in the heart; memory to store program instructions; and a processor that, when executing the program instructions, is configured to: collect an intra-cardiac electrogram (EGM) signal along the sensing vector, the EGM signal associated with a cardiac cycle; determine a global slope minimum experienced by the EGM signal over the cardiac cycle; and calculate a QRS duration based on a QRS start time and a QRS end time , characterized by: determine a global amplitude minimum experienced by the EGM signal over the cardiac cycle; define the QRS start time , within the EGM signal , based on the global slope minimum; determine a local amplitude maximum for a segment of the EGM signal within a search window of the global amplitude minimum, the segment constituting a part of the cardiac cycle; and define the QRS end time , within the EGM signal , based on the local amplitude maximum. an implantable lead having electrodes (122, 124, 126, 132-138) configured to be located proximate to a heart, the electrodes (122, 124, 126, 132-138) defining a sensing vector through a region of interest in the heart; memory to store program instructions; and a processor that, when executing the program instructions, is configured to: collect an intra-cardiac electrogram (EGM) signal along the sensing vector, the EGM signal associated with a cardiac cycle; determine a global slope minimum experienced by the EGM signal over the cardiac cycle; and calculate a QRS duration based on a QRS start time and a QRS end time , characterized by: determine a global amplitude minimum experienced by the EGM signal over the cardiac cycle; define the QRS start time , within the EGM signal , based on the global slope minimum; determine a local amplitude maximum for a segment of the EGM signal within a search window of the global amplitude minimum, the segment constituting a part of the cardiac cycle; and define the QRS end time , within the EGM signal , based on the local amplitude maximum. collect an intra-cardiac electrogram (EGM) signal along the sensing vector, the EGM signal associated with a cardiac cycle; determine a global slope minimum experienced by the EGM signal over the cardiac cycle; and calculate a QRS duration based on a QRS start time and a QRS end time , characterized by: determine a global amplitude minimum experienced by the EGM signal over the cardiac cycle; define the QRS start time , within the EGM signal , based on the global slope minimum; determine a local amplitude maximum for a segment of the EGM signal within a search window of the global amplitude minimum, the segment constituting a part of the cardiac cycle; and define the QRS end time , within the EGM signal , based on the local amplitude maximum. determine a global amplitude minimum experienced by the EGM signal over the cardiac cycle; define the QRS start time , within the EGM signal , based on the global slope minimum; determine a local amplitude maximum for a segment of the EGM signal within a search window of the global amplitude minimum, the segment constituting a part of the cardiac cycle; and define the QRS end time , within the EGM signal , based on the local amplitude maximum. <EOS>