This just means you add an electrode Cz and set its value to zero. Fp1 remains unchanged.
The way the data acquisition was set up, Cz was used as an offline reference, which suggests that the Cz electrode does exist. I would like to retain the Cz electrode if possible.
I'm not sure I understand what this means.
If the line "REF : 0*Cz" of the montage gets replaced with "Ref : " automatically, it probably means that there is no channel "Cz" in your recordings.
But feel free to create a channel with the name you want for your reference.
May I ask why you want to add the reference channel back into the data matrix? Are you sure this is really something you need?
Note that the only interest I can think of for adding back an empty channel before computing an average reference channel is to be able to revert the computation and go back to the original monopolar montage. In Brainstorm, you can always revert to the original data as the average reference is added as a linear operator on the side of the EEG data, and applied on the fly to it. This original continuous EEG file is not modified.
For source estimation, there is no interest of adding extra channels that are linear recombination of the others, as this does not add any information to the model: the rank of the EEG data matrix remains the same. Adding extra channels is actually not recommended.
You need to apply the montage, and then set the position of the new electrode.
Adding new channels which are local interpolations is not recommended before source estimation. The only use case where using local linear interpolations is advised: replacing bad channels with the objective of computing a sensor-level grand average across subjects that have different lists of bad channels, in order not to have to reject to many channels in the grand average.
The reason for retaining the Cz electrode is because I was under the impression that this electrode was omitted from the dataset since it does not appear in the channel file. This may be problematic if I were to display a topographic map of theta/alpha which tend to centre around Cz electrode. Is there something I have overlooked with this logic?
At least for now, I am not planning to calculate sources with this dataset. I am attempting to display frequency components across all electrodes in a scalp topographic map.
The reason for retaining the Cz electrode is because I was under the impression that this electrode was omitted from the dataset since it does not appear in the channel file. This may be problematic if I were to display a topographic map of theta/alpha which tend to centre around Cz electrode. Is there something I have overlooked with this logic?
The channels listed on the right of the colon ":" in the montage definition MUST exist in the dataset.
The syntax "0 * Fp1" = "0 * Cz" = 0, it is only a way to set a new channel to 0, just ignore which channel it is using a source to compute the new channel entirely filled with zeros.
I am attempting to display frequency components across all electrodes in a scalp topographic map.
In a topographic map in Brainstorm, the values around Cz would be interpolated from the neighbors.
The changes you can expect to observe in the "2D sensor cap" or "2D disc" figures after adding an extra reference channel are probably negligible, and probably not worth the trouble you are running into.
You can probably simply skip this step.
I am currently adding the reference channel back using the custom montage approach you described. However, I am able to run Standardize > Apply montage directly on the raw data. I was wondering if this is a feature that has been added since this post was written. Is it safe to apply the montage directly to the raw data in this way, or is it still recommended to first import the continuous file as a single epoch before applying the montage?
Yes, applying montages on raw data (to generate a new raw file) is a recent addition, April 2025
Applying on the raw data or imported is equivalent. The advantage of applying on the raw data is that the new file is saved as a raw file in Brainstorm binary file (.bst) which allows random access, so reading it and processing it can be done in blocks. Unlike imported data that must be processed all at once.
Also, in October 2025, we added a the Add-reference-channel-back montage in the GUI, which automatically creates the montage to add a channel, so no need to create a custom montage for this action:
Thank you so much for the clarification. It is helpful to know that applying Standardize ā Apply montage directly on raw data is now supported and equivalent. It truly makes this much easier.
It is also great to know about the Add-reference-channel-back montage that was added, that will definitely simplify this step.