🎉 USE O CUPOM DESCONTO.FULL | 20% OFF acima de R$ 50,00

Como corrigir o erro Critical CSS Not Generated no WP Rocket

Time Full Services Time Full Services
Tipo Performance & Velocidade
Nome do erro Critical CSS Not Generated no WP Rocket EN: WP Rocket Critical CSS Not Generated
Severidade Atenção
Descrição O erro Critical CSS Not Generated aparece quando o WP Rocket não consegue gerar o CSS crítico ou o Used CSS de uma página, porque o serviço SaaS do plugin precisa acessar o site de fora e algo bloqueia esse acesso. Sem o CSS gerado, a otimização de entrega de CSS fica desligada e o site perde velocidade.

O que é erro Critical CSS Not Generated no WP Rocket?

Critical CSS Not Generated e o estado em que o WP Rocket falha ao produzir o CSS crítico (Critical Path CSS) ou o Used CSS de uma ou mais páginas. As features Remove Unused CSS e Load CSS Asynchronously, ambas dentro de Optimize CSS Delivery, não geram esse CSS no próprio servidor: elas enviam a URL da página para um serviço externo da WP Rocket, em nuvem, que visita a página, calcula apenas o CSS de fato usado e devolve o resultado. Esse processamento e assincrono e disparado pelo cron do WordPress, em fila.

Como identificar

  • No painel, em WP Rocket -> File Optimization, aparece o aviso de que o CSS não foi gerado, com mensagem do tipo ‘We could not generate the used CSS’ para uma ou mais URLs
  • O WP Rocket exibe o aviso ‘It seems a security plugin or the server’s firewall prevents WP Rocket from accessing the SaaS features’, indicando bloqueio do serviço em nuvem
  • A opção Remove Unused CSS ou Load CSS Asynchronously fica marcada, mas o site continua carregando a folha de estilo completa, sem o ganho de velocidade esperado
  • No teste do PageSpeed Insights a recomendacao ‘Eliminate render-blocking resources’ continua aparecendo mesmo com a feature ativada
  • A fila de geração de Used CSS nunca esvazia: as páginas seguem marcadas como pendentes mesmo após vários minutos
Antes de começar: Ao liberar o user-agent do WP Rocket na allowlist do firewall, restrinja a liberacao apenas a esse user-agent. Não desative o firewall por completo nem libere acesso irrestrito ao servidor para resolver a geração de CSS.

Como prevenir

  • Mantenha a licenca do WP Rocket sempre ativa: o serviço de geração de CSS depende de licenca valida e para de funcionar assim que ela expira.
  • Antes de ativar Optimize CSS Delivery, confirme que o site esta público, sem modo de manutenção nem proteção por senha, para o serviço externo conseguir visitar as páginas.
  • Se usa Cloudflare ou plugin de segurança, já deixe o user-agent do WP Rocket na allowlist, evitando que novas páginas falhem na geração.
  • Em sites de baixo tráfego, configure um cron real no servidor em vez de confiar no WP-Cron, que so dispara quando alguem visita o site, para a fila de Used CSS nunca travar.

Causa

  • Um plugin de segurança (Wordfence, AIOS, iThemes) ou o firewall do servidor bloqueia o user-agent do serviço SaaS da WP Rocket, impedindo o acesso externo a página.
  • O Bot Fight Mode da Cloudflare esta ativo e barra o robo da WP Rocket como se fosse um bot malicioso antes de chegar a página.
  • O site não esta publicamente acessivel: esta em modo de manutenção, protegido por senha (HTTP Auth) ou bloqueado por regra no arquivo .htaccess.
  • A licenca do WP Rocket esta expirada ou invalida, e o acesso ao serviço em nuvem so funciona com licenca ativa.
  • O WP-Cron não esta rodando (cron desativado por DISABLE_WP_CRON ou sem cron real no servidor), entao a fila de geração de Used CSS nunca e processada.
  • A página demora mais de 45 segundos para carregar, limite acima do qual o serviço SaaS desiste de gerar o CSS daquela URL.

Como resolver

  1. Confirme que a página esta acessivel publicamente: Abra a URL afetada em uma janela anonima do navegador, sem estar logado. A página precisa carregar normalmente, sem tela de login, sem aviso de modo de manutenção e sem caixa de senha do servidor. Se aparecer qualquer barreira, desative o modo de manutenção e a proteção por senha antes de seguir, porque o serviço externo enxerga a página do mesmo jeito que um visitante anonimo.
    https://seusite.com.br/página-afetada/
  2. Valide a licenca do WP Rocket: No painel, abra WP Rocket -> Dashboard e confira se a licenca aparece como valida e dentro da validade. O acesso ao serviço em nuvem que gera o CSS so e liberado com licenca ativa. Se estiver expirada, renove e clique para revalidar antes de continuar.
    WP Rocket -> Dashboard -> Validate License
  3. Libere o firewall e o plugin de segurança para o serviço SaaS: Se o aviso de firewall aparece, o robo do WP Rocket esta sendo barrado antes de ler a página. No Wordfence, ative o Learning Mode por alguns minutos ou adicione o user-agent do WP Rocket a allowlist. No plugin de segurança ou no firewall do servidor, libere o user-agent abaixo para que o serviço externo consiga visitar a página.
    WP Rocket/Detect Critical CSS
    WP-Rocket-Used-CSS
  4. Desligue o Bot Fight Mode da Cloudflare: Se o site usa Cloudflare, entre no painel da Cloudflare e desative o Bot Fight Mode, que costuma bloquear o robo da WP Rocket como bot. Em planos pagos, prefira criar uma regra de WAF que permita o user-agent do serviço em vez de deixar o Super Bot Fight Mode genérico ligado.
    Cloudflare -> Security -> Bots -> Bot Fight Mode: Off
  5. Garanta que o cron esta processando a fila: A geração do Used CSS roda em fila pelo cron. Se o WP-Cron estiver desativado, a fila nunca anda. Cheque se a constante de desativar o cron não esta definida no arquivo de configuração e, em servidores com pouco tráfego, configure um cron real no painel de hospedagem chamando o arquivo de cron do WordPress a cada poucos minutos.
    define( 'DISABLE_WP_CRON', false );
    */5 * * * * wget -q -O - https://seusite.com.br/wp-cron.php?doing_wp_cron
  6. Regenere o CSS e limpe o cache: Com os bloqueios removidos, force uma nova geração. No painel, em WP Rocket -> Dashboard, clique em Clear Used CSS para descartar o estado antigo e recolocar as páginas na fila. Em seguida limpe o cache e visite as URLs afetadas para disparar o processamento. Aguarde alguns minutos e confirme em File Optimization que o aviso de CSS não gerado desapareceu.
    WP Rocket -> Dashboard -> Clear Used CSS
    WP Rocket -> Dashboard -> Clear and preload cache
PHP
<?php
// wp-config.php
// Garanta que o WP-Cron nao esteja desativado: a fila de Used CSS
// do WP Rocket so e processada quando o cron consegue rodar.

// Errado (impede o WP Rocket de processar a fila de geracao):
// define( 'DISABLE_WP_CRON', true );

// Certo: deixe o WP-Cron ativo...
define( 'DISABLE_WP_CRON', false );

// ...e, em sites de baixo trafego, configure um cron REAL no servidor
// chamando wp-cron.php a cada 5 minutos (crontab do servidor):
// */5 * * * * wget -q -O - https://seusite.com.br/wp-cron.php?doing_wp_cron

Perguntas frequentes

O que significa Critical CSS Not Generated no WP Rocket?
Significa que o WP Rocket não conseguiu gerar o CSS crítico ou o Used CSS de uma página. Esse CSS e produzido por um serviço em nuvem da WP Rocket que visita a página de fora. Quando algo bloqueia esse acesso, a feature de otimização de CSS fica sem o resultado e o site continua carregando a folha de estilo completa.
Por que o WP Rocket precisa acessar meu site de fora para gerar o CSS?
Porque a geração do Used CSS e do CSS crítico não roda no seu servidor: o WP Rocket envia a URL para um serviço externo em nuvem que visita a página, calcula apenas o CSS de fato usado e devolve o arquivo. Por isso o site precisa estar publicamente acessivel e o firewall precisa liberar o robo do serviço.
Como saber se um plugin de segurança esta bloqueando a geração?
O próprio WP Rocket exibe o aviso de que um plugin de segurança ou o firewall do servidor impede o acesso as features SaaS. Quando esse aviso aparece, o robo do serviço esta sendo barrado antes de ler a página. A solução e liberar o user-agent do WP Rocket na allowlist do plugin de segurança ou do firewall.
O Bot Fight Mode da Cloudflare atrapalha a geração de CSS?
Sim. O Bot Fight Mode trata o robo do WP Rocket como bot e bloqueia o acesso a página, o que impede a geração. Desligue o Bot Fight Mode no painel da Cloudflare ou, em planos pagos, crie uma regra de WAF que permita especificamente o user-agent do serviço da WP Rocket.
A licenca expirada pode causar esse erro?
Pode. O acesso ao serviço em nuvem que gera o CSS so e liberado com licenca valida. Se a licenca do WP Rocket estiver expirada, a geração falha mesmo com firewall liberado. Renove a licenca, revalide no Dashboard e force uma nova geração com Clear Used CSS.
Por que a fila de Used CSS nunca termina de processar?
A geração roda em fila disparada pelo cron do WordPress. Se o WP-Cron estiver desativado, ou se o site tiver pouco tráfego e o cron quase não for chamado, a fila não anda. Garanta que a constante de desativar o cron não esteja ligada e configure um cron real no servidor para processar a fila com regularidade.
Onde forco o WP Rocket a gerar o CSS de novo?
No painel, em WP Rocket -> Dashboard, use o botão Clear Used CSS para descartar o estado anterior e recolocar as páginas na fila. Depois limpe o cache e visite as URLs afetadas para disparar o processamento. Em poucos minutos o aviso de CSS não gerado deve sumir em File Optimization.
O limite de 45 segundos de carregamento influencia na geração?
Sim. O serviço externo desiste de gerar o CSS de uma página que demora mais de 45 segundos para carregar. Se a página e muito pesada ou o servidor esta lento, reduza o tempo de carga antes de tentar de novo, senao aquela URL continuara sem o CSS gerado.

Seja PRO.

Tenha acesso a snippets de código premium — PHP, JavaScript, CSS e HTML prontos para usar em seus projetos.

Conhecer o plano Pro →

Uma nova era para o WordPress.

A FULL Services redefine o CMS com uma arquitetura modular que transforma o WordPress em um motor de crescimento digital. 

Painéis personalizados

Um novo nível de controle para o WordPress. Acompanhe métricas, automações e evolução do seu site em um único painel visual.

A força por trás de grandes marcas

Para agências, estúdios e profissionais independentes que desejam oferecer soluções de alto nível com sua própria marca.

Componentes

Hero Sections

30 componentes

Seções de CTA

14 componentes

Login

14 componentes

Blog

14 componentes

Cabeçalhos

24 componentes

Seções de FAQ

53 componentes

Cadastro

53 componentes

Blog individual

53 componentes

Rodapés

28 componentes

Seções de contato

27 componentes

Seções de preços

27 componentes

Faixas

27 componentes

Portfólio

16 componentes

Seções de equipe

12 componentes

Números

12 componentes

Logotipos

12 componentes