In some cases, server configurations or other issues may prevent automatic plugin updates directly from the WordPress Dashboard. If you find that you are not able to update your free WordPress.org hosted plugin with the standard WordPress update features, this guide will help you do so manually.
This is an example of a WordPress.org timeout error:

Step 1: Create a Backup #
Before starting any manual plugin updates, it’s essential to perform a full site backup. While updating plugins should keep all your data intact, it’s always a good practice to have a backup in place to safeguard your site in case anything unexpected happens.
Step 2: Download the ZIP file from WordPress.org #
The first step is to download the latest version of the plugin from WordPress.org.
Here is the Restrict Content plugin page on WordPress.org as an example.
Once you are there, you’ll see a Download button towards the upper right of the page, below the plugin banner. Click on that to Download the latest version of the plugin you are trying to install.

Now you should have a ZIP file in your Downloads folder for the plugin.
NOTE: Some browsers (specifically Safari) automatically unzip ZIP files upon download. If you see a folder instead of a ZIP file, youll need to ZIP that folder before proceeding.
Step 3: Upload the ZIP file to your WordPress Website #
Next you need to upload this ZIP file to your WordPress website. The WordPress plugin update system allows you to update a plugin simply by uploading the new ZIP file and it handles the update automatically.
To do this, navigate in your WordPress admin to Plugins > Add New Plugin. From there click on Choose File. That will open your computers file system for you to find the ZIP file you previously downloaded. Choose that and submit.

Once the file is fully uploaded, you should see a message that WordPress has detected that you already have this plugin installed. It will ask you whether you want to Replace current with uploaded or Cancel and go back. Click Replace current with uploaded to update your plugin.

The system will now update your plugin to the latest version. Thats it!