In this article, we will explore the Modulenotfounderror: no module named discord error.
Together with the possible reasons why this error occurs and a brief understanding about to the discord module.
Many communities, including gamers and developers, use Discord as a chat and communication platform.
However, when attempting to use Discord with Python, you may encounter an error message stating “no module named discord.”
So this is the goal of our article, we will investigate what this error message means and how to resolve it.
What is no module named discord
Before we get into the solutions, it’s important to understand what the error message “no module named discord” is.
Since modules are files in Python that contain Python code that can be used in other Python programs.
When you try to use the discord module in your Python program but it is not installed on your system, Python will raise a “no module named discord” error.
What is modulenotfounderror: no module named ‘discord’
The Python ModuleNotFoundError: No module named discord error occurs when we fail to install the discord.py module or when we install it in the wrong environment when importing it.
Solution to Fixed modulenotfounderror no module named discord
To solve this error the following ways you might consider to follow.
- Install the module
Open your terminal or command prompt and install discord.py by the following command:
If you are using virtual environment or using Python 2
pip install discord.py
When using python 3 it could be also be pip3.10 depending on your version
pip3 install discord.py
When getting permissions error
sudo pip3 install discord.py
pip install discord.py –userWhen you don’t have pip in your PATH environment variable
python -m pip install discord.py
If you are using for python 3 it could also be pip3.10 depending on your version
python3 -m pip install discord.py
If using py alias (Windows)
py -m pip install discord.py
When using Anaconda
conda install -c conda-forge discord.py
For Jupyter Notebook
!pip install discord.py - If you will get voice support rather than discord.py
Do the following command to install voice support of discord .py
pip install “discord.py[voice]”

When using python 3 (could also be pip3.10 depending on your version)
pip3 install “discord.py[voice]”
For permissions error
sudo pip3 install “discord.py[voice]”
When you don’t have pip in your PATH environment variable
python -m pip install “discord.py[voice]”
When using python 3
python3 -m pip install “discord.py[voice]”
If using py alias (Windows)
py -m pip install “discord.py[voice]”
Note: If you are using Linux install the prerequisite first when installing discord.py voice. Use the following command: sudo apt install libffi-dev libnacl-dev python3-dev - Check the Python version
If the error continues check your python version and make sure you are installing the package using the correct Python version.
python –version

- Fix the path
If the error persists it may be because the installed pip is but the script is in the wrong path.
Follow the steps below to resolve the path problem in Windows.
Step 1: Open the command prompt and type where python to navigate to the folder where you installed Python.
Step 2: After you browse and open the Scripts folder and copy its location. Also, ensure that the pip file is present in the folder.
Step 3: Open the Scripts directory in the command prompt by using the cd command and the previously copied location.
Step 4: Now install the library using pip install discord.py command. Here’s an analogous example:
After you’ve completed the preceding steps, run our script again. And you should get the expected result.
Why this Modulenotfounderror: no module named discord occur?
These are the possible causes why you are getting this error in your python project:
- The discord module is not installed.
- The discord module is installed but in a different Python environment.
- The discord module is installed, but not in the Python version you are using.
- The discord module is misspelled or capitalized incorrectly.
- Your IDE running an incorrect version of Python.
Summary
In conclusion, the Modulenotfounderror: no module named discord error is a common error that occurs when you try to use the discord module in your Python program without installing it or adding it to the Python path.
The solutions we’ve provided in this article should help you resolve the issue and start using the discord module in your Python programs.
We hope this article has been helpful in solving your “no module named discord” error.
If you are finding solutions to some errors you’re encountering we also have Modulenotfounderror: no module named ‘tensorflow contrib’
Diagnostic checklist for “No module named ‘discord'”
- Verify pip install target. Run
pip show discord— if not installed, runpip install discord. - Check the active Python interpreter.
which python(mac/Linux) orwhere python(Windows). Both pip and python must point to the same environment. - Check virtual environment activation. If you use venv/conda, activate before installing:
source .venv/bin/activate. - Rule out uppercase/lowercase. Python imports are case-sensitive:
import PyPDF2notimport pypdf2. - Rule out the pip-vs-package-name mismatch. Some packages install under a different name than you import (e.g.
pip install beautifulsoup4→import bs4).
Installing discord
# Standard pip install pip install discord # In a virtual environment (recommended) python -m venv .venv source .venv/bin/activate # or .venv\Scripts\activate on Windows pip install discord # With uv (faster alternative) uv pip install discord
Common causes for “No module named ‘discord'”
- Python interpreter mismatch. Multiple Python installations can confuse pip. Verify with
which pythonandwhich pip. - Virtual environment not activated. If the venv isn’t activated, pip installs to your system Python instead.
- Notebook kernel mismatch. Jupyter uses a kernel that may differ from your terminal Python. Use
%pip install discordinside the notebook. - Import name differs from install name. pip install beautifulsoup4 → import bs4. Check the package’s PyPI page.
- Windows PATH issues. Ensure Python is on PATH; use
python -m pip installto invoke pip via the correct Python.
Working code example
# Verify install worked import discord print(getattr(discord, '__version__', 'no version attribute'))
Best practices
- Always use a virtual environment. Avoids most module-not-found errors.
- Use pip freeze to lock versions.
pip freeze > requirements.txtmakes your setup reproducible. - Consider uv or Poetry. Modern package managers with better dep resolution and reproducibility.
Official documentation
Frequently Asked Questions
What is Python ModuleNotFoundError and what causes it?
ModuleNotFoundError (a subclass of ImportError) is raised when Python cannot find the module you tried to import. Common causes: the package isn’t installed (pip install missing), wrong virtual environment activated, typo in module name, or Python can’t find your local module on the import path. The error message names exactly which module is missing.
How do I fix ‘ModuleNotFoundError: No module named X’?
Run pip install X first. If that succeeds but you still get the error, check which Python you’re using (which python OR python –version) vs which pip (which pip OR pip –version), they must match. Common gotcha: pip points to system Python 3.9 but you’re running python3.11 in a venv. Inside the venv, use python -m pip install X to be sure pip matches the active Python.
Why does my code work in one environment but not another?
Different Python versions or different installed packages. To diagnose: pip freeze > requirements.txt on the working environment, then pip install -r requirements.txt on the broken one. Use virtualenv (python -m venv venv) or conda for every project to avoid system-wide package collisions.
Is ModuleNotFoundError the same as ImportError?
ModuleNotFoundError is a subclass of ImportError added in Python 3.6. It specifically means ‘no such module exists.’ Plain ImportError covers a wider set: module exists but a name inside it can’t be imported (e.g. ‘cannot import name X from Y’). except ImportError catches both; except ModuleNotFoundError catches only the missing-module case.
Where can I find more ModuleNotFoundError fixes?
Browse the ModuleNotFoundError reference hub for 198+ specific module fixes (TensorFlow, Flask, Django, pandas, numpy, etc.). For related issues see ImportError. For broader Python setup see Python Tutorial hub.



