Station 1 · Lesson 1
Installing EEGLAB & plugins
Your browser's back button takes you to the exact place you were, so open anything you like.
The idea in brief
EEGLAB is a collection of functions written in MATLAB. So you need MATLAB first, then the EEGLAB folder itself.
Once it is installed, you extend EEGLAB with plugins. A pluginA package that adds new functions or menus to EEGLAB. is a small package that adds menus and functions, for example to read a file format EEGLAB cannot read on its own.
Before and after
Image coming soon.
Two screenshots side by side. Left: the MATLAB window with eeglab typed in the Command Window before pressing Enter, and the Current Folder showing the unzipped EEGLAB folder (eeglab.m and the functions, plugins and sample_data folders are visible). Right: the EEGLAB main window after it starts, with no data loaded, and its seven menus in order: File, Edit, Tools, Plot, Study, Datasets, Help. Real screenshot from EEGLAB 2026.1 (source: eeglab-ui).
Your next questions, each answered in its own section:
Why do I need this step?
The reasons in detail, and the terms you need
Every lesson after this one assumes EEGLAB runs on your computer, and that the Biosig plugin is installed so you can import EDF files in the import lesson.
Why do I need this step?
Every lesson after this one assumes EEGLAB runs on your computer, and that the Biosig plugin is installed so you can import EDF files in the import lesson.
How do I do it in EEGLAB?
12 steps in the menus
No MATLAB yet?
If you do not have MATLAB yet, read the “Which value should I choose?” table below first, then come back here.
No MATLAB yet?
If you do not have MATLAB yet, read the “Which value should I choose?” table below first, then come back here.
1. Download EEGLAB
- Open the official download page: Download EEGLAB.
- Fill in the form: name and email, tick the box to accept the BSD license, then click Submit.
- You get a ZIP file of the latest stable release.
2. Unzip it in a permanent place
Unzip the file in a folder you will not move later, such as Documents/MATLAB. You get a folder whose name starts with eeglab followed by the version number.
3. Save the path before the first run
Save the path before you type eeglab. The reason: when it starts, EEGLAB adds its subfolders to the path, and the save button saves the whole path as it is at that moment.
- Open MATLAB, and do not start EEGLAB yet. If you already started it in this session, close MATLAB and open it again.
- Type
pathtoolin the Command Window (or open Set Path from the MATLAB interface). - Click Add Folder and select the main EEGLAB folder only.
- Click Save, then Close.
4. Start EEGLAB
Type eeglab in the Command Window and press Enter.
The EEGLAB main window opens with seven menus: File, Edit, Tools, Plot, Study, Datasets and Help. When it starts, EEGLAB adds its own subfolders to the path of the current session, without saving them.
From now on, typing eeglab in any new MATLAB session is enough.
5. Install the Biosig plugin
- In the EEGLAB window, open File then Manage EEGLAB extensions. This needs an internet connection.
- The list of plugins appears. Plugins in bold are installed on your computer, and red ones need an update.
- Click the search button at the top of the window and type
Biosig. - Select Biosig in the list, then click Install/Update.
- EEGLAB downloads the plugin and rebuilds its window. Biosig reads EDF, BDF and many other formats.
The extension manager shows each plugin’s star rating and download count, and sorts the list by downloads. When two plugins do the same job, these two numbers are a quick first guide. For what each common plugin does and when you need it, see the Plugins guide.
How do I do it in EEGLAB?
No MATLAB yet?
If you do not have MATLAB yet, read the “Which value should I choose?” table below first, then come back here.
No MATLAB yet?
If you do not have MATLAB yet, read the “Which value should I choose?” table below first, then come back here.
1. Download EEGLAB
- Open the official download page: Download EEGLAB.
- Fill in the form: name and email, tick the box to accept the BSD license, then click Submit.
- You get a ZIP file of the latest stable release.
2. Unzip it in a permanent place
Unzip the file in a folder you will not move later, such as Documents/MATLAB. You get a folder whose name starts with eeglab followed by the version number.
3. Save the path before the first run
Save the path before you type eeglab. The reason: when it starts, EEGLAB adds its subfolders to the path, and the save button saves the whole path as it is at that moment.
- Open MATLAB, and do not start EEGLAB yet. If you already started it in this session, close MATLAB and open it again.
- Type
pathtoolin the Command Window (or open Set Path from the MATLAB interface). - Click Add Folder and select the main EEGLAB folder only.
- Click Save, then Close.
4. Start EEGLAB
Type eeglab in the Command Window and press Enter.
The EEGLAB main window opens with seven menus: File, Edit, Tools, Plot, Study, Datasets and Help. When it starts, EEGLAB adds its own subfolders to the path of the current session, without saving them.
From now on, typing eeglab in any new MATLAB session is enough.
5. Install the Biosig plugin
- In the EEGLAB window, open File then Manage EEGLAB extensions. This needs an internet connection.
- The list of plugins appears. Plugins in bold are installed on your computer, and red ones need an update.
- Click the search button at the top of the window and type
Biosig. - Select Biosig in the list, then click Install/Update.
- EEGLAB downloads the plugin and rebuilds its window. Biosig reads EDF, BDF and many other formats.
The extension manager shows each plugin’s star rating and download count, and sorts the list by downloads. When two plugins do the same job, these two numbers are a quick first guide. For what each common plugin does and when you need it, see the Plugins guide.
How do I write it as code?
The same steps in 12 lines of MATLAB
The same steps from the command line. Run it once after unzipping EEGLAB, in a new MATLAB session where you have not started EEGLAB yet.
% Go to the EEGLAB folder (change the path to yours)
cd('C:\Users\me\Documents\MATLAB\eeglab2026.1');
% Save the root EEGLAB folder in the path BEFORE starting EEGLAB,
% so its subfolders are not saved too
addpath(pwd);
savepath;
% Start EEGLAB; it adds its own subfolders for this session only
eeglab;
% Install Biosig only if it is not installed yet (needs internet)
if ~exist('sopen', 'file')
plugin_askinstall('Biosig', 'sopen', true);
endaddpath(pwd)thensavepathsave the main folder only, because they come beforeeeglab. If they came after it,savepathwould save all the subfolders EEGLAB added, which is what the documentation warns against.sopenis a Biosig function. If it exists, the plugin is installed and there is no need to install it again.- The third argument,
true, installs the plugin without a confirmation dialog, so it works inside a scriptA MATLAB file of commands that runs processing steps in order..
How do I write it as code?
The same steps from the command line. Run it once after unzipping EEGLAB, in a new MATLAB session where you have not started EEGLAB yet.
% Go to the EEGLAB folder (change the path to yours)
cd('C:\Users\me\Documents\MATLAB\eeglab2026.1');
% Save the root EEGLAB folder in the path BEFORE starting EEGLAB,
% so its subfolders are not saved too
addpath(pwd);
savepath;
% Start EEGLAB; it adds its own subfolders for this session only
eeglab;
% Install Biosig only if it is not installed yet (needs internet)
if ~exist('sopen', 'file')
plugin_askinstall('Biosig', 'sopen', true);
endaddpath(pwd)thensavepathsave the main folder only, because they come beforeeeglab. If they came after it,savepathwould save all the subfolders EEGLAB added, which is what the documentation warns against.sopenis a Biosig function. If it exists, the plugin is installed and there is no need to install it again.- The third argument,
true, installs the plugin without a confirmation dialog, so it works inside a script.
Which value should I choose?
Suitable values for your analysis goal
The only decision here: where do you get MATLAB? The options go from best to weakest for these lessons.
| Option | Cost | Enough for these lessons? | Why |
|---|---|---|---|
| University license | Usually free for students | Yes, fully | Most universities provide a MATLAB license for their students. Ask your university IT department. The official documentation recommends the MATLAB version first. |
| MATLAB Online (basic) | Free with a MathWorks account | For trying things out, with limits | 20 hours per month, 5 GB of MATLAB Drive storage, and a 15-minute limit on continuous compute time (MathWorks page). In principle you can upload the EEGLAB folder to MATLAB Drive and type eeglab, but we have not tested this on 2026.1 yet. |
| Compiled EEGLAB | Free, no MATLAB | Mostly, but no new plugins | A ready-made version for Windows and macOS that does not need MATLAB. It ships with many plugins and runs simple scripts. But it has no Manage EEGLAB extensions , so you cannot add a new plugin to it. The documentation ranks it second after MATLAB. |
| GNU Octave | Free and open source | Partly | An open alternative to MATLAB. The official documentation says it is less stable than MATLAB and ranks it as the third and last choice. We do not promise that every lesson works on it. |
MATLAB release: the EEGLAB team recommends a recent, though not necessarily the newest, MATLAB release. If you have MATLAB 2016a or older, the download page points you to EEGLAB 2020.0, which this site does not cover.
Updating: in the MATLAB version you find Help then Check for EEGLAB update, and EEGLAB prints at startup whether you have the latest release. But these lessons are written for EEGLAB 2026.1, so do not update in the middle of the course. Menu names and numbers may change in a newer release.
Which value should I choose?
The only decision here: where do you get MATLAB? The options go from best to weakest for these lessons.
| Option | Cost | Enough for these lessons? | Why |
|---|---|---|---|
| University license | Usually free for students | Yes, fully | Most universities provide a MATLAB license for their students. Ask your university IT department. The official documentation recommends the MATLAB version first. |
| MATLAB Online (basic) | Free with a MathWorks account | For trying things out, with limits | 20 hours per month, 5 GB of MATLAB Drive storage, and a 15-minute limit on continuous compute time (MathWorks page). In principle you can upload the EEGLAB folder to MATLAB Drive and type eeglab, but we have not tested this on 2026.1 yet. |
| Compiled EEGLAB | Free, no MATLAB | Mostly, but no new plugins | A ready-made version for Windows and macOS that does not need MATLAB. It ships with many plugins and runs simple scripts. But it has no Manage EEGLAB extensions menu, so you cannot add a new plugin to it. The documentation ranks it second after MATLAB. |
| GNU Octave | Free and open source | Partly | An open alternative to MATLAB. The official documentation says it is less stable than MATLAB and ranks it as the third and last choice. We do not promise that every lesson works on it. |
MATLAB release: the EEGLAB team recommends a recent, though not necessarily the newest, MATLAB release. If you have MATLAB 2016a or older, the download page points you to EEGLAB 2020.0, which this site does not cover.
Updating: in the MATLAB version you find Help then Check for EEGLAB update, and EEGLAB prints at startup whether you have the latest release. But these lessons are written for EEGLAB 2026.1, so do not update in the middle of the course. Menu names and numbers may change in a newer release.
How do I check it worked?
5 quick checks
- The window: the EEGLAB main window opened with its seven menus.
- The path: close MATLAB, open it again, and type
which eeglab. It should print the path ofeeglab.minside your folder. And when you runeeglab, no red warning about subfolders should appear. - The version: type
eeg_getversion. It should print a version number starting with2026.1. - The plugin: type
exist('sopen', 'file'). A result of2means Biosig is installed. Its name also appears in bold in the extension manager. - Startup lines: each time EEGLAB starts, it prints one line per plugin it loads in the Command Window, starting with
EEGLAB: addingfollowed by the plugin name and version. Look for Biosig.
How do I check it worked?
- The window: the EEGLAB main window opened with its seven menus.
- The path: close MATLAB, open it again, and type
which eeglab. It should print the path ofeeglab.minside your folder. And when you runeeglab, no red warning about subfolders should appear. - The version: type
eeg_getversion. It should print a version number starting with2026.1. - The plugin: type
exist('sopen', 'file'). A result of2means Biosig is installed. Its name also appears in bold in the extension manager. - Startup lines: each time EEGLAB starts, it prints one line per plugin it loads in the Command Window, starting with
EEGLAB: addingfollowed by the plugin name and version. Look for Biosig.
What mistakes do people make?
5 mistakes and how to avoid them
- Downloading the ZIP from GitHub instead of the download page. You miss essential plugins such as ICLabelA tool that classifies each ICA component into seven classes with a probability for each., clean_rawdata and firfilt. Red warnings appear at startup for the first two, and EEGLAB asks to download firfilt the first time you filterA tool that weakens some frequencies in a signal and keeps others..
- Saving the folder with all its subfolders. This happens with the Add with Subfolders button, or by saving the path after running
eeglabin the same session. The documentation advises saving the main folder only, and EEGLAB prints a red warning at startup if it finds its subfolders saved. - Keeping an old EEGLAB release in the path. If you install a new release, remove the old one in Set Path with the Remove button. Otherwise MATLAB may call outdated functions.
- Looking for the extension manager in the compiled version. The menu does not exist there at all. If you need a plugin it does not include, you need the MATLAB version.
savepathor the Save button fails. This usually happens when your account cannot write to the MATLAB folder. Run MATLAB as administrator once. Or create a file namedstartup.min the folder printed by theuserpathcommand, and write one line in it:addpathfollowed by the EEGLAB folder path in parentheses. MATLAB runs this file automatically at the start of every session, and it needs no special permissions.
What mistakes do people make?
- Downloading the ZIP from GitHub instead of the download page. You miss essential plugins such as ICLabel, clean_rawdata and firfilt. Red warnings appear at startup for the first two, and EEGLAB asks to download firfilt the first time you filter.
- Saving the folder with all its subfolders. This happens with the Add with Subfolders button, or by saving the path after running
eeglabin the same session. The documentation advises saving the main folder only, and EEGLAB prints a red warning at startup if it finds its subfolders saved. - Keeping an old EEGLAB release in the path. If you install a new release, remove the old one in Set Path with the Remove button. Otherwise MATLAB may call outdated functions.
- Looking for the extension manager in the compiled version. The menu does not exist there at all. If you need a plugin it does not include, you need the MATLAB version.
savepathor the Save button fails. This usually happens when your account cannot write to the MATLAB folder. Run MATLAB as administrator once. Or create a file namedstartup.min the folder printed by theuserpathcommand, and write one line in it:addpathfollowed by the EEGLAB folder path in parentheses. MATLAB runs this file automatically at the start of every session, and it needs no special permissions.
Your browser doesn't allow saving progress. All lessons are open, but completion marks won't be saved.
Done. Your progress is saved in this browser.UndoWhere can I read more?
6 sources, official docs first
- EEGLAB TutorialDocumentation1. Installing EEGLAB
- EEGLAB ExtensionsDocumentationTo install or update a plugin
- Download EEGLABDocumentationDownload the EEGLAB ZIP file archive
- The compiled version of EEGLABDocumentationInstallation
- Running EEGLAB on OctaveDocumentationRunning EEGLAB on Octave
- MATLAB Online Versions (MathWorks)MATLAB Online (basic)
Written for EEGLAB 2026.1 · 2026-10-28
Going further
- EEGLAB Tutorial: https://eeglab.org/tutorials/01_Install/Install.html (1. Installing EEGLAB)
- EEGLAB Extensions: https://eeglab.org/others/EEGLAB_Extensions.html (To install or update a plugin)
- Download EEGLAB: https://eeglab.org/others/How_to_download_EEGLAB.html (Download the EEGLAB ZIP file archive)
- The compiled version of EEGLAB: https://eeglab.org/others/Compiled_EEGLAB.html (Installation)
- Running EEGLAB on Octave: https://eeglab.org/others/Running_EEGLAB_on_Octave.html (Running EEGLAB on Octave)
- MATLAB Online Versions (MathWorks): https://www.mathworks.com/products/matlab-online/matlab-online-versions.html (MATLAB Online (basic))
Need help?
Ask, share feedback, or report an error
- Report a scientific error · Needs a GitHub account. Don't have one? Use "Share your thoughts".