Choosing an e-commerce platform decides your costs, how much you can customize, and how much server work you take on. The big split is SaaS (Shopify and similar: they run everything, you pay monthly fees and transaction costs) vs self-hosted open-source platforms on your own VPS (you control everything, and you’re responsible for it).
The main options
| Platform | Type | Language / stack | Best for |
|---|---|---|---|
| WooCommerce | Self-hosted (WordPress plugin) | PHP, MySQL | Content-led stores, small to medium catalogs |
| Magento Open Source (Adobe Commerce) | Self-hosted | PHP, MySQL, OpenSearch, Redis | Large catalogs, complex B2B |
| PrestaShop | Self-hosted | PHP, MySQL | Small to medium stores, strong in Europe |
| OpenCart | Self-hosted | PHP, MySQL | Simple, lightweight stores |
| Medusa | Self-hosted, headless | Node.js, PostgreSQL | Developer teams wanting custom frontends |
| Shopify | SaaS | Hosted | Fast launch, minimal tech work |
Self-hosted vs SaaS
| Self-hosted on a VPS | SaaS | |
|---|---|---|
| Monthly cost | Server + extensions + your time | Plan fee + apps + transaction fees |
| Control | Full code, data and server access | Limited to the platform’s options |
| Customization | Anything | Themes, apps, APIs |
| Maintenance | Updates, security, backups: you | Provider |
| Data ownership | Fully yours | Export available, platform-dependent |
| Scaling | You plan capacity | Automatic |
Self-hosting pays off when you want flexibility, have (or hire) technical skills, or want to avoid per-transaction fees as revenue grows. SaaS wins when you want to launch quickly and never think about servers.
Platform notes
WooCommerce: the most popular self-hosted option, because WordPress is everywhere. Excellent for combining content and commerce, with huge plugin and theme choice. Needs good caching and database tuning as orders and products grow. See WooCommerce VPS requirements and WooCommerce performance.
Magento: the most powerful open-source platform: multi-store, complex catalogs, B2B features. Also the heaviest: plan at least 4 GB RAM (8 GB is more comfortable), plus OpenSearch, Redis and Varnish for production, and a developer familiar with it. See installing Magento.
PrestaShop: a full-featured store out of the box, lighter than Magento, with many paid modules. Popular in France, Spain and Italy. See installing PrestaShop.
OpenCart: simple and lightweight, easy to run on a small VPS. Fewer advanced features, and extension quality varies. See installing OpenCart.
Medusa: a headless commerce engine in Node.js. You build the storefront (Next.js and others). Great for developer teams that want full control of the frontend and modern APIs.
Shopify: the easiest to start, with strong apps and checkout. Costs rise with apps and transaction fees, and deep customization has limits. See WooCommerce vs Shopify.
Hosting requirements (rough starting points)
| Platform | Small store | Notes |
|---|---|---|
| OpenCart | 1–2 GB RAM | PHP + MySQL |
| WooCommerce | 2–4 GB RAM | Add Redis object cache as it grows |
| PrestaShop | 2–4 GB RAM | PHP + MySQL; caching recommended |
| Medusa | 2–4 GB RAM | Node.js + PostgreSQL + Redis, plus the storefront |
| Magento | 4–8 GB RAM | PHP + MySQL + OpenSearch + Redis (+ Varnish) |
Traffic, catalog size, and extensions change these numbers a lot. Load-test before big campaigns. See load testing with k6.
What every self-hosted store needs
- HTTPS everywhere, with automatic certificate renewal.
- Security updates for the platform, extensions, PHP or Node, and the OS. See Linux server hardening.
- Daily backups of the database and media, stored off the server. See database backup automation.
- PCI DSS awareness: use payment gateways with hosted fields or redirects (Stripe, PayPal, Adyen), so card data never touches your server.
- Monitoring of uptime and errors.
- Transactional email through a proper SMTP provider, with SPF/DKIM/DMARC. See SPF, DKIM and DMARC.
How to choose
| If you… | Consider |
|---|---|
| Already use WordPress, or rely on content marketing | WooCommerce |
| Have a large catalog, multiple stores, B2B needs, and a dev budget | Magento |
| Want a complete store with moderate resources | PrestaShop |
| Need a simple store on a small budget | OpenCart |
| Have developers who want headless and modern APIs | Medusa |
| Want zero server work | Shopify |
Related: VPS for e-commerce and WordPress on a VPS.