- In 2008 Varien created Magento, an open source ecommerce CMS (Content Management System). The project was based on the Zend framework.
- In June 2009, Varien launched the Enterprise version, which is paid on the basis of an annual fee and offers some additional features such as private sales.
- In 2018 Adobe bought Magento, but the open source project continues to exist.
- Currently, Magento is at version 2.4, and it is this version that we will use in the comparison.
Growth curve of Magento stores (all versions together):
In 2007, students from Epitech (school for computer science and new technologies) created the open source CMS PrestaShop. At its inception, PrestaShop used an "in-house" framework that is currently being transitioned to Symfony.
Today, it is the company of the same name that manages and maintains the PrestaShop open source project. The latest version is 1.7.8 (7.8 with the new version nomenclature); this is the version we will use in this comparison.
Here is the curve of PrestaShop stores (all versions together):
Key points of the comparison
The objective is to provide a practical guide for making the right choice between the 2 CMS and not to compare features. So we're going to compare 5 points:
More advice and feedback on best practices
Enables easier start-up and maintenance
Makes it easier to bear the load and is more pleasant to navigate
Helps generate natural traffic to the site
Reduces costs and increases quality by pooling developments
Enables better support
Minimizes financial risk and maximizes return on investment
Reduces bounce rate and supports traffic peaks
Attracts new customers without using paid advertising
Easier customization of the store thanks to the modules offered by the solution
- The community: this is an important factor because it is the community that can help you develop your site via partner agencies, help you configure your store or find solutions and implement them via the forums.
- The price: This is a determining factor in the choice of a solution. We will compare the price of development, but also the price of maintenance, as well as the price of hosting, and in this way present a global overview of all possible costs.
- Performance: this is a point that is sometimes underestimated. Performance (i.e. loading time and number of simultaneous connections) is one of the elements that guarantee the stability and scalability of a store. A very greedy CMS will require higher hosting and/or SEA costs for a similar result compared to a lighter site.
- SEO: It has been known for a long time that a website needs the most efficient natural referencing in order to attract the most visitors possible.
- Integration: This is an often-overlooked factor. We will focus on the ability and ease of integrating new solutions or new features. If you still have to create your own module because there are none on the extensions site.
The Magento community has about 500,000 members, while the PrestaShop community has over 1,000,000 members.
The vast majority of the PrestaShop community is French-speaking, so French speakers won't have any trouble finding help on the forum, whether it's for a technical question or a configuration.
The documentation for the 2 CMS is up to date and clear.
This proves that the PrestaShop community is more involved in the project even though there are fewer contributors and demonstrates a greater involvement in the project.
This discrepancy has impacts that we will describe later.
Creation of the store
Magento is a more complex CMS than PrestaShop and there are fewer Magento developers, which is why the Average Daily Rate is often higher. Moreover, on the Malt platform, PrestaShop freelancers cost on average €380/d against €480/d for Magento. The complexity of Magento generally increases the development time.
These elements raise the minimum cost of a Magento project to €50,000, while €10,000 is sufficient for a PrestaShop site.
Again, due to the complexity that separates the two solutions and the average daily rate, the time needed to solve a bug or to add a new feature will be more significant for Magento and also more expensive.
It is difficult to estimate the cost of hosting because it depends a lot on the developments you want to add to your store and the site traffic. Here is the list of prerequisites for the 2 CMS:
Web server: Apache, Nginx, etc.
Web server: Apache, Nginx, etc.
PHP 7 minimum
PHP 7 minimum
Mysql 5.7 or MariaDb
|Mysql 5.7 or MariaDb|
The fact that Varnish and Elasticsearch are mandatory means that a more powerful machine is needed, as well as more complex and therefore more expensive managed services. Elasticsearch requires at least 8 GB of RAM to run, Magento suggests 2 GB of RAM. You need at least 10 GB to run Magento without special traffic.
At present, the PrestaShop hosting offer with an equivalent RAM can support 200 simultaneous connections.
These 2 tools (Varnish and Elasticsearch) are real boosters for your site's performance and it will be possible to install them on your PrestaShop when the need arises.
The difference in performance between PrestaShop and Magento is largely due to the difference in their database design. Magento uses an "EAV (entity-attribute-value)" model while PrestaShop uses a more traditional model.
Here is a very simplified product example to better illustrate the impact of this difference:
This table represents the entities; here 3 products, this represents the products we have in our catalog.
This table represents the attributes; here name and price, it corresponds to the different characteristics of our products.
This table represents the values of our entities. For each entity (product) we have 2 attributes (name and price) and so we have one row for each.
Let's compare this model with PrestaShop's:
It is a much simpler data model in terms of design as well as readability for both humans and machines.
So why did Magento design its database this way? The EAV model is very flexible, allowing you to add new attributes without altering the structure of the data. This is a great advantage because changing the structure of a database is extremely complicated and risky. The price of this flexibility is performance. It is tricky to access and format the data, that's why Magento now natively uses Elasticsearch and Varnish to compensate for this weakness. This infrastructure is cumbersome even when the catalog is small and visits are few.
PrestaShop has a much simpler design. For catalogs of less than 10,000 items and with less than 100 simultaneous connections, there is no need for a large cache system. Nevertheless, Varnish and Elasticsearch can be installed when the catalog and visits increase to help boost site performance.
On standard versions (without additional development) with the same hosting budget, the same catalog size and the same traffic, you will most often enjoy better performance with PrestaShop.
SEO represents the ability to attract visitors to a site. It depends a lot on the metadata, the performance of the site or the content of your site. In order to achieve effective SEO, it is important to work on all these parameters.
How do you achieve a good referencing?
What key points should we focus on to make this happen?
What special features of PrestaShop and Magento address this?
As far as integration is concerned, we will rely on the modules available for the most recent versions of the CMS.
|PrestaShop (v1.7.8)||Magento (v2.4)|
When it comes to modules the difference is not important: 600 modules for PrestaShop, or 20% more than Magento. The real difference lies in the number of themes over 2000 (400x more) for PrestaShop. These differences are the consequences of the high development costs involved in developing a module or a theme. The advantage of having more choice in the modules is that you can easily customize or add features simply. Similarly with themes, if the layout of a theme is satisfactory then changing the colors will be much cheaper than redoing the whole integration.
This difference can also be seen on external sites such as ThemeForest
APIs (Application Programming Interface) and webhooks are the means used to connect payment, carrier, ERP, etc. and CMS solutions to each other. PrestaShop allows you to add new entry points directly in its API, or if there is a really specific need, it is possible to use a front controller to create a new API. Both methods are accessible via modules and allow the partner module to guarantee a good integration.
- Magento is a solution that has a very flexible product catalog and allows a very advanced level of customization.
- In return, it requires considerable resources and technical expertise. This makes the solution relatively inaccessible.
- PrestaShop is a simple solution, allowing it to be very affordable and not very resource-intensive.
- It remains scalable and efficient with technical expertise.
- Its community and its numerous modules and themes are assets that help reduce costs.