Skip to main content
< All Topics

Skin Conductance Response (SCR)

The Skin Conductance contains two components: the tonic, static „level“ and the phasic, fluctuating „reactions“, and these components are usually designated as Skin Conductance Responses (SCR).

While the “level” is represented well in the average of the measured values, the eSense Skin Response also measures the amount of Skin Conductance Response (SCR) per minute. In general, a higher number of SCR per minute is an indicator for higher stress. Value from experience which is in alignment with scientific literature[1] suggests that a “relaxed” frame is between 0 and 5 SCR per minute. From 6-9 SCR/min starts an animated state. From 10 or even from 16 SCR/min, a level of stress or even high stress can be assumed.


[1] Boucsein, W. B. (2011). Electrodermal Activity (2. Aufl.). Berlin, Deutschland: Springer.

[2] Boucsein, W., Fowles, D. C., Grimnes, S., Ben-Shakhar, G., Roth, W. T., Dawson, M. E., & Filion, D. L. (2012). Publication recommendations for electrodermal measurements. Psychophysiology, 49(8), 1017–1034.

The SCR are great for comparing biofeedback-sessions to each other. If your goal for training is a reduction of stress, then the amount of SCR/min should decrease over several sessions. In the archive of the app, you can compare the different sessions to each other.

The average value in µS of a session is an indicator for the “level,” hence how high your basis level of tension or relaxion is. You should also try to lower this while you are doing stress reduction training. The average value also takes the SCR into consideration and is falsified with many SCR/min. You should, therefore, use as quiet a frame as possible without any SCR to determine your own “stress level” in µS.

We have colored the SCR/min in the eSense app. Low SCR are green or yellow and high SCR/min are orange or red. While making a measurement, the recognized SCR are colored within the curve. Two examples from our app:

Example of a measurement in a relaxed state with little SCR/min (green and yellow)
Example of a measurement in a stressed state with more SCR/min
(yellow and orange)

In the right diagram, there is also the time in which the values rise, fall or have been steady. With rising stress, the curve rises more often and longer than it keeps steady or falls. This is also an ideal parameter to analyze and to compare biofeedback sessions.

How the app detects a spontaneous fluctuation (from version 8.1.6)

With app version 8.1.6 we revised how spontaneous fluctuations are detected. The app now looks at the rise from a local minimum to the following maximum. That rise counts as an SCR if it reaches at least 0.02 µS within 1 to 20 seconds.

The amplitude threshold follows the publication recommendations of the Society for Psychophysiological Research[2], which name a lower limit of 0.01 µS for equipment with fine resolution. The eSense Skin Response resolves in steps of 0.01 µS; at 0.02 µS we sit one step above that, so a single resolution step does not already count as a response. The time window of 1 to 20 seconds is wider than the 1 to 5 seconds given there for laboratory conditions, so that slower rises are captured as well.

In practice this means the SCR rate now depends far less on how calm or restless the signal is overall. With low readings, part of the measurement noise used to be counted as a fluctuation.

Can older and newer recordings be compared?

SCR values from recordings made before version 8.1.6 cannot be compared one to one with newer ones. This concerns the number of spontaneous fluctuations, the SCR per minute figure and the colour classification derived from it. The shape of the curve, the baseline level in microsiemens and the pronounced rises and falls remain comparable.

A second change works in the same direction. Since versions 8.1.x the app smooths the measurement signal with an adaptive filter, which can also lower the number of counted fluctuations. What that filter does and what it does not do is explained in Why does my curve look smoother than before?.

If you follow your training over a longer period, it is best to compare recordings from within the same period.

One open remark about the bands of 0 to 5, 6 to 9, 10 to 15 and from 16 SCR per minute: they were calibrated against the earlier counting method. We will review them once enough recordings with the new detection are available.

How detection worked up to version 8.1.3

We are keeping the earlier description because many users hold series of recordings that reach across this version boundary. Up to and including version 8.1.3, detecting and calculating the SCR was a cycle of four steps:

  1. Listening state
  2. Determining if the signal raise is really a SCR
  3. Gathering and calculating SCR and listening asynchronously for SCR recovery phase
  4. Initiate recovery phase and end of fluctuation
Listening stateDetermining if the signal raise is really a SCR
Initiate recovery phase and end of fluctuationGathering and calculating SCR and listening asynchronously for SCR recovery phase

The 4 Steps in detail


1. Listening state

The cycle starts in the first step, the listening state. This is the standard default state.

2. Determining signal raise

There are two ways for detecting the start of an SCR start. The values could either raise slowly with a small step or very fast with a big amplitude. This creates the following to conditions:

  1. The signal is constantly rising for 2 seconds 
  2. The difference between the current signal and the pretended base value (the value that is considered to be the first value in the rising signal. But on this stage, it is not confirmed yet as a base value) is greater than 0.5 micro siemens.
    In simple words the app will react to a sudden signal raise and confirm it as the fluctuation start and will not wait for 2 seconds (as in the first condition above)

If the signal will fall just even 0.1 micro siemens during a raise, the app will drop out of this second step and return to the first step (the listening state) again. Otherwise it will continue with the next two steps 3 and 4.

3. Gathering and calculating SCR (fluctuation)

If one of the two conditions from the second step above are met, the app enters this third step, the fluctuation. The first signal of the fluctuation period is the base value of a fluctuation signal. During the whole fluctuation period, the app is detecting the amplitude which is constantly changing. Then the app starts to calculate the SCR events globally and within a one-minute time window. This results in the SCR/min value.

4. Initiate recovery phase

The fluctuation is considered to enter the recovery phase (the end of fluctuation) when the signal falls for more than 50% of the greatest amplitude of the fluctuation period. 

This is also the step where the color in the graph is changed (based on the quantity of SCR events that were occurring). The colors for the SCR background are also calculated (by dividing time intervals into equal segments and getting the sum of the SCR events from each segment).

Some links on this website are affiliate links. If you make a purchase through these links, we may earn a small commission at no additional cost to you. As an Amazon Associate, we earn from qualifying purchases.