Есть здесь уже статья про ускорение сайта от Вараники для Revo, решил, что для Evo тоже не помешает. Помогает зайти в зеленую зону и в идеале получить 100/100 и 100/100 по PageSpeed Insights.

1. Хостинг для сайта выбираем качественный, чтобы время ответа сервера не подводило, на нем должно обязательно работать gzip (можно использовать Sweb, Beget и другие).

2. Верстка сайта обязательно должна быть адаптирована под мобильные телефоны.

3. В .htaccess дописываем:
## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType text/css "access 1 month"
ExpiresByType text/html "access 1 month"
ExpiresByType application/pdf "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
ExpiresDefault "access 1 month"
</IfModule>
## EXPIRES CACHING ##

FileETag MTime Size
<ifmodule mod_expires.c>
  <filesmatch "\.(jpg|gif|png|css|js)$">
       ExpiresActive on
       ExpiresDefault "access plus 1 year"
   </filesmatch>
</ifmodule>

4. Для счетчиков посещений и других внешних скриптов, делаем следующее:

а. Скачиваем скрипты счетчиков и заливаем в папку со скриптами.

б. Создаем файл download-js.php в корне сайта со следующим кодом:
<?php
function downloadJs($file_url, $save_to)
{
    $content = file_get_contents($file_url);
    file_put_contents($save_to, $content);
}
downloadJs('https://mc.yandex.ru/metrika/watch.js', realpath("./js") . '/watch.js');
downloadJs('https://www.google-analytics.com/analytics.js', realpath("./js") . '/analytics.js');
?>

в. Ставим задание в крон, запуск задания: 0 * * * * (на вашем хостинге команда может отличаться):
wget -q -O - /dev/null https://mysite.ru/downloadjs.php >/dev/null 2>&1

5. Все скрипты и стили убираем из head в футер сайта, для всех скриптов прописываем defer (async будет выдавать ошибки), например:
<script defer src="/js/script.js" ></script>

6. На странице Google PageSpeed Insights под отчетом находим ссылку «Скачать оптимизированные изображения, ресурсы JavaScript и CSS для этой страницы», скачиваем уменьшенные файлы min.js и изображений (стили можно не скачивать, их уменьшим сниппетом, а скрипты уже должны быть минифицированы, иначе сниппет их не подтянет), заменяем наши скрипты и изображения скачанными (конечно, изображения только те, для которых не используется phpthumb).

7. С помощью jonassebastianohlsson.com/criticalpathcssgenerator/ генерируем critical CSS и добавляем в head в виде inline. Будет супер, если кто-то создаст автоматическое генерирование этих инлайн цсс для каждой страницы, но Node.js не на каждом обычном хостинге работает.

8. Ставим сниппет CssJs, добавляем defer для скриптов и здесь в код сниппета, как в п.7 (внимание, костыли)))

9. Для перенесенных в футер стилей и скриптов (все скрипты должны быть обязательно .min.js) прописываем их вывод с помощью сниппета CssJs, для вывода стилей также подключаем loadCSS, вид следующий:
<script>!function(e){"use strict";var n=function(n,t,o){function i(e){if(a.body)return e();setTimeout(function(){i(e)})}function r(){l.addEventListener&&l.removeEventListener("load",r),l.media=o||"all"}var d,a=e.document,l=a.createElement("link");if(t)d=t;else{var f=(a.body||a.getElementsByTagName("head")[0]).childNodes;d=f[f.length-1]}var s=a.styleSheets;l.rel="stylesheet",l.href=n,l.media="only x",i(function(){d.parentNode.insertBefore(l,t?d:d.nextSibling)});var u=function(e){for(var n=l.href,t=s.length;t--;)if(s[t].href===n)return e();setTimeout(function(){u(e)})};return l.addEventListener&&l.addEventListener("load",r),l.onloadcssdefined=u,u®,l};"undefined"!=typeof exports?exports.loadCSS=n:e.loadCSS=n}("undefined"!=typeof global?global:this);	</script>
<script> loadCSS('[!css? &files=`
css/style1.css,
css/style2.css,
css/custom.css
`&minify=`1`!]');</script>
[!js? &files=`
js/jquery.min.js,
js/script1.min.js,
js/script2.min.js,
js/script3.min.js,
` &minify=`1`!]
]

10. Ставим плагин HtmlInLine, в нем дописываем (опять же простите за костыли))) после строки
$content= preg_replace('|\s+|', ' ', $content);
еще одну строку, чтобы автоматически убирать комментарии из выводимого HTML
$content = preg_replace( '/(<!--.*?-->)/s', ' ', $content ); 

Теперь мы уже попали в зеленую зону Google PageSpeed, следующие пункты для тех, кто хочет получить 100/100 и 100/100 и для кого не важно удобное управление в админке.

11. У изображений, которые генерируются с помощью phpthumb дописываем q=65, иногда PageSpeed просит еще больше снизить качество, но при q=60 уже видны пиксели, здесь либо смиряемся с пикселями, либо можно прописать скачанные в п.4 изображения в HTML без phpthumb.

12. Очень удобный и горячо любимый всеми ddGetMultipleField, к сожалению, добавляет еще 100 мс при генерации страницы, чтобы еще добавить скорости и попасть в заветные 200 мс, либо используйте чистый HTML в подобных местах, либо создавайте доп поля в виде отдельных материалов, закрывайте их от индексациии и выводите через Ditto/Doclister.