How to choose hosting for an online shop
A small shop on WooCommerce, OpenCart or 1C-Bitrix runs fine on a good shared hosting plan. Its requirements are stricter than those of a business card site, though: recent PHP and database versions, HTTPS on every page, headroom in the limits for sales and backups from which orders can be restored quickly. Below is what to check in a plan, what it costs and when it is time to move to a VPS.
A shop differs from an ordinary website in that every minute of downtime costs money and the database changes all the time: orders, stock levels, customers. So hosting for a shop is chosen on four points: whether the environment suits the CMS, how HTTPS and payments are set up, whether the account can handle a rush of buyers and whether there is a fresh copy of the database. The general comparison of hosting and a VPS is in the article Shared hosting or VPS for a website; this one is only about shops.
Requirements of popular CMS
Start with the official requirements of your platform and compare them with the plan description:
| CMS | PHP | Database | Other |
|---|---|---|---|
| WooCommerce | 8.3 or newer | MySQL 8.0+ or MariaDB 10.6+ | PHP memory of 256 MB or more, HTTPS |
| OpenCart | 8.0 or newer | MySQL or MariaDB (MySQLi or PDO) | cURL, GD, mbstring, ZipArchive, zlib and OpenSSL extensions |
| 1C-Bitrix: Site Management | 8.2 | MySQL 8.0 or newer | Apache 2.0+ or Nginx |
Sources: WooCommerce recommendations, OpenCart documentation and 1C-Bitrix system requirements. 1C-Bitrix is a CMS common in Russia and the CIS, and its developer states plainly that any hosting meeting these requirements will do. WooCommerce still allows the old PHP 7.4 and MySQL 5.6, but warns that their support has ended and they are not secure.
Plan descriptions rarely state PHP versions. According to the accsly.io catalog as of November 2026, of the 1,469 plans suitable for a shop, PHP versions are named for 127, and PHP 8.3 or newer for only 39. So before paying, ask support about the PHP and database versions, the PHP memory limit (memory_limit) and whether you can switch the version yourself in the panel.
Besides the versions, a shop needs:
- Cron jobs. They run stock imports, product feeds to marketplaces, abandoned cart emails and cache cleanup.
- Two or more databases. The second one is for a staging copy of the shop, where updates are tested before going live.
- Headroom in disk space and inodes. Product photos, thumbnails and cache quickly add up to tens of thousands of files. The limit on the number of files can be stricter than the disk space limit; more on this in the article How to read hosting plans: the hidden limits.
- Mail on the domain. Order emails are sent in the shop's name, and without SPF and DKIM records they end up in spam.
SSL and payment pages
A shop works only over HTTPS: logging in to the customer account, the cart and forms with a phone number and address all depend on it. A free Let's Encrypt certificate suits a shop just as well as a paid one, and the hosting panel takes care of issuing and renewing it. In the catalog, free SSL is listed for 488 plans suitable for a shop and explicitly absent from 11; for the rest it is not stated, so check before paying. How certificate types differ and when a paid one is worth it is covered in the article SSL certificates: free and paid.
It is best not to accept card details on your own hosting at all. Set up payments so that the buyer enters the card on the payment provider's page or in its widget, and the shop receives only the payment status. Then card numbers never pass through your server, and the requirements of the PCI DSS standard for your hosting are kept to a minimum. If the card entry form is on your own site, ordinary shared hosting is no longer enough, and such a setup has to be agreed with the payment provider.
Traffic peaks: sales and mailings
On shared hosting every account has limits, and a shop hits them on its best days: a sale, a mailing to the customer base, an ad campaign. For example, in CloudLinux, which many hosts run, an account is allowed by default 20 simultaneous PHP entry processes and 1 GB of process memory. When there are more buyers, the site responds with error 508, and some orders are lost.
What helps:
- find out from the host the real process, memory and CPU limits on the chosen plan and the next one up;
- enable caching of catalog pages and serve images through a CDN, see the article CDN: when a website needs one;
- load-test the shop on a staging copy before a big promotion, as described in the article Load testing a website before launch;
- choose a plan without a traffic cap so that a spike in visits does not turn into an extra charge: hosting with unlimited traffic.
Backups
For a shop, what matters is not just having a copy but how fresh it is. A week-old copy means a week of lost orders. Backups are listed for 395 plans suitable for a shop; for the rest the host does not describe them. Check three things: how often files and the database are copied, how many days copies are kept and whether you can restore them yourself from the panel.
Even with good backups at the host, keep your own: a daily database dump and a weekly archive of files somewhere else, in cloud storage or on another server. Once a quarter, test a restore on a staging copy. Storage schemes are covered in more detail in the article VPS backups: strategies and tools.
Shop security on shared hosting
The host is responsible for the server, but the shop owner is responsible for the CMS itself. Shops are most often hacked through outdated modules and themes, not through the server. What to do from day one:
- Update the CMS, modules and themes as soon as security fixes are released. Test the update on a staging copy in the second database first, then roll it out to the live site.
- Remove what you do not use. Unused modules, old themes and copies of the site in folders like /old or /backup remain reachable from the internet and become an entry point.
- Protect the admin login. A separate account for each employee, two-factor authentication if the CMS supports it, and a strong password for the hosting panel.
- Separate access. Give a contractor a separate FTP or SSH user with access only to the site folder, not the password to the whole panel. Remove the access once the work is done.
Ask the host whether the server scans files for malware and protects against password brute-forcing. If the host finds malicious code, it may take the site offline temporarily, so a clean backup is needed for that case too.
What hosting for a shop costs
Prices are per the accsly.io catalog as of November 2026, plans in stock on monthly billing, per month. The catalog keeps prices in roubles; the dollar figures are converted at the Central Bank of Russia rate of 7 November 2026 and rounded. A plan suitable for a shop here means hosting with at least two databases and 10 GB of disk.
| Option | Price, all locations |
|---|---|
| Hosting for a shop, a quarter of plans cost less than | $5 |
| Hosting for a shop, median | $8.95 (1,469 plans) |
| Hosting for 1 site, median | $3.95 (977) |
| VPS 2 vCPU, 4 GB, median | $21.25 (2,440) |
| VPS 4 vCPU, 8 GB, median | $40.15 (2,335) |
The cheapest single-site plan usually does not suit a shop: it has one database and little space. Plans that include both free SSL and backups cost $10 a month in the middle of the market (369 plans). About a quarter of hosting plans are sold only with payment for a year in advance, so compare the price per month. A selection of plans: hosting for an online shop, and if you need a fast database, NVMe hosting.
When a shop needs a VPS
Shared hosting stops being enough when the shop has tasks that do not fit into a shared account:
- error 508 or 503 appears on ordinary days, not only during sales;
- the catalog has tens of thousands of products with filters, and category pages take several seconds to open;
- imports from the accounting or inventory system take hours and are cut off by the script time limit;
- you need Redis, a search engine, queues or your own web server configuration.
Such a shop usually does well on a VPS with 2–4 vCPU and 4–8 GB of memory: VPS for an online shop. How to tell that a move is justified is described in the article When to move from shared hosting to a VPS, and the move itself without downtime in the article How to move a website from shared hosting to a VPS.