Enact CMS vs Craft CMS Speed Test Comparison

If you have used Craft CMS before you will see there are many parallels to Enact CMS. Craft was an initial inspiration for the creation of Enact and Enact aimed to fix some of its short comings, primarily its speed and its price. We think you will find that Enact wins out on both of those metrics, and dare we say quite a few others.

The Speed Tests (Server Response Time)

The tests were run on a localhost machine with these specs:

Test times were captured using the Net Panel of Firebug.

We compared Enact v1.1.11 with Craft v2.6.2804 (the two latest releases as of 8/2/16)

We used three tests to compare the speed of Enact & Craft,

  1. Rendering a template that directly matches a URI (no entry was requested and fetched from the database and injected into the template), the URI being /test-speed and the template being test-speed.html.

    The template simply consisted of a paragraph tag:

    <p>Test</p>
  2. Rendering a template for an entry with 1 rich text field, the contents of the rich text field contained the same amount of data.

    The template:

    <h1>{{ entry.title }}</h1>
    {{ entry.body }}
    
  3. Rendering a template for an entry which had 1 plaintext field, and 2 matrixes. The first matrix consisted of 2 field groups (blocks), one with a plain text field and rich text field (used one time in the matrix), the other with a dropdown menu field and an entries field which had one entry selected (used one time in the matrix). The second matrix consisted of only 1 field group (blocks), it contained a plain text field and an asset field which had two assets selected (used one time in the matrix). On both systems the data entered into each field was exactly the same, including the entry selected and the assets selected.

    <h1>{{ entry.title }}</h1>
    <p>{{ entry.testPlain }}</p>
    
    {% for block in entry.testMatrix.matrixFieldHandle %}
        {% if block.handle == 'blockA' %}
            {{ block.blockARich }}
            <p>{{ block.blockAPlain }}</p>
        {% elseif block.handle == 'blockB' %}
            <p>{{ block.blockBDropdown }}</p>
            {% for entries in block.blockBEntries.entryFieldHandle %}
                <p>{{ entries.url }}</p>
            {% endfor %}
        {% endif %}
    {% endfor %}
    
    {% for block in entry.testMatrix2.matrixFieldHandle %}
        {% if block.handle == 'blockA' %}
            <p>{{ block.blockAPlain }}</p>
            {% for assets in block.blockAAssets.assetFieldHandle %}
                <p>{{ assets.fileName }}</p>
            {% endfor %}
        {% endif %}
    {% endfor %}
    

In all three tests no additional markup or resources were included in the templates (they didn't extend a layout and no external resources were requested ie css or javascript), also user sessions were not present to avoid transferring cookie bytes along with the requests.


All test result times are in milliseconds


Test #1 Results

Run #EnactCraft
1529
2522
3734
4422
5835
6629
7424
8732
9627
10635
Avg5.828.9

Enact was on average 23.1 milliseconds faster than Craft, or 498.28% faster.

Test #2 Results

Run #EnactCraft
1735
2727
3624
4932
51129
6630
7730
8727
9629
10737
Avg7.330

Enact was on average 22.7 milliseconds faster than Craft, or 410.96% faster.

Test #3 Results

Run #EnactCraft
11148
21251
31154
4864
5852
61069
71047
81066
91766
10986
Avg10.660.3

Enact was on average 49.7 milliseconds faster than Craft, or 568.87% faster.


Why these speed tests and results are important

It's become popular knowledge that server response times are an important attribute in SEO (search engine optimization) which can influence your SERP (search engine results page) rankings. Obviously the higher you rank in SERPs the more often you will be found on the web and the more business and customers you can reach. So in short, having faster server response times, which Enact acting as your back-end will give you over Craft, will lead to better positioning in SERPs.

Don't take it from us though, as the team as MOZ says:

Websites with servers and back-end infrastructure that could quickly deliver web content had a higher search ranking than those that were slower. This means that, despite conventional wisdom, it is back-end website performance and not front-end website performance that directly impacts a website's search engine ranking.

Quote from https://moz.com/blog/how-website-speed-actually-impacts-search-ranking

Or listen to the Google Webmasters:

We encourage you to perform these tests and any more you can think of and see for yourself, Enact wins in speed (server response time) every time.