Cyclic Voltammetry (CV) Simulator Written in Microsoft Excel

File uploaded by Jay Brown on Nov 19, 2015Last modified by Jay Brown on Jan 14, 2020
Version 154Show Document
  • View in full screen mode



The attached file is an updated version of a simple cyclic voltammetry (CV) simulator written in Microsoft Excel.1 The spreadsheet supports up to four chemical species that can undergo up to four redox processes each. The calculations assume that the first process is a charge transfer. Experimental CVs with up to 10,000 data points can be copied/pasted into the spreadsheet for comparison to the simulation. The spreadsheet can be operated in protected mode or unprotected and modified as needed. The spreadsheet is provided with no guarantee and it may not be suitable for all applications. System requirements: Microsoft Windows 8.1 Office software or later. An updated version of v_18 (see below) was uploaded to the ACS Network on 1/14/20.




List your formal redox potential (Eo') values in decreasing order if reduction occurs during the forward sweep.2 Reverse this order if oxidation occurs during the forward sweep. Set the Eo' values of unused peaks beyond the switching potential (E2) in the order noted above to exclude them from the model. Set the starting potential (E1) value greater than the switching potential (E2) if reduction occurs during the forward sweep. Reverse this order if oxidation occurs during the forward sweep.


Software updates


Improved control of the boundary conditions to allow simulations with the first redox potential (Eo') value placed before the starting potential (E1) on 11/15/19. The diffusion profiles will now show what happens in that situation. There was no change in the version number for this minor improvement.


Incorporated separate diffusion coefficients for all subspecies on 9/20/19. Previous versions of this spreadsheet used “common” diffusion coefficients for members of the same redox couple to simplify the calculations. This update provides better control of the diffusion coefficients.


Improved the diffusion profile graphics on 6/4/19. The spreadsheet now automatically recognizes when symmetry in the model generates the same species on the forward and return sweeps and avoids graphing the same species twice.


Added a Total simulation graphic to the Import data page to help users optimize the background parameters on 5/31/18. First, copy/paste your experimental data into the Import data page. Then adjust the Offset parameter to zero the baseline of your CV. Next, click on the Species 1 tab to begin your simulation. You can then return to the Import data page at any time to optimize your Gain and Offset parameters based on your simulation.


Incorporated the Saul’yev RL variant to simulate Fick’s Second Law of Diffusion on 1/8/17. This method can calculate thinner reaction layers than the combined Taylor series that was used previously.3 Reducing the variable xScale reduces the length of the diffusion grids and places the concentration points closer to the working electrode surface. However, using diffusion grids that are too short or long will distort your simulations, so adjust this parameter only as needed.


Separated the equations involving the number of electrons in the rate-determining step from the total number of electrons transferred on 12/22/16. The number of electrons in the rate-determining step (na) now controls the peak width.2 The total number of electrons transferred (n) now controls the total current.


Spreadsheet variables


Several variables from the original spreadsheet were renamed to incorporate new features. The following table describes the variables that are used in the newest version of the spreadsheet. Symbols in the spreadsheet that appear as subscripts in parentheses after a variable indicate which subspecies the variable is operating on.




Value and/or unit(s)


Amplification factor for the experimental background

Unitless multiplier


Constant added to the experimental current



Formal potential for a redox couple



Total number of electrons transferred per species (controls total peak area)



Number of electrons transferred in the rate determining step (controls peak width)



Standard heterogeneous rate constant for an electron transfer



Transfer coefficient for a redox couple

≈ 0.5 (unitless)


Diffusion coefficient for a subspecies

≈ 1 x 10-5 cm2/s


Concentration of the bulk solution



Starting potential of the CV experiment



Switching potential of the CV experiment



Scan rate used during the CV experiment



Surface area of the working electrode



Temperature of the sample during experiment



Compress or expand x-axes of diffusion grids

Percentage (%)


Rate constant for a first-order homogeneous reaction that removes a species from electron transfer cycle



Rate constant for second-order homogeneous reaction that removes a species from electron transfer cycle



Bug report


Minor bug in the data selection process was corrected on 1/14/20. Bug in the diffusion profile graphics was corrected on 6/26/19. Minor bug in the Import data graphics corrected on 12/31/15. Bug in the concentration calculations of the 4th redox couple oxidized form corrected on 12/8/15. Bug in the time increment calculations was corrected on 11/16/15.


References cited


1. J. H. Brown, J. Chem. Educ., 2016, 93 (7), 1326–1329. DOI: 10.1021/acs.jchemed.6b00052.


2. A. J. Bard, L. R. Faulkner, Electrochemical Methods: Fundamentals and Applications, Wiley: New York, 1980, ISBN: 0-471-05542-5.


3. D. Britz, Digital Simulation in Electrochemistry 3ed ed., Springer: Berlin, 2010, ISBN: 978-3-642-06307-7.