O motivo é aritmético: um único estilo em 5 cores e 6 tamanhos gera 30 SKUs distintos. Uma coleção de 200 estilos chega a 6.000 SKUs antes de você incluir variantes sazonais, kits ou a divisão entre Centros de Distribuição regionais. Templates genéricos ignoram essa complexidade — e é exatamente aí que eles falham.
Por Que o Estoque de Moda É Mais Complexo que o Estoque Genérico
A maioria dos templates de controle de estoque trata o SKU como a unidade mínima de análise. Moda não funciona assim. Você está rastreando uma hierarquia de três níveis — estilo → variante de cor → tamanho — e cada pergunta de negócio vive em um nível diferente: Quantas peças do Blazer Monaco temos disponíveis? Quantas em azul-marinho? Quantas em azul-marinho, tamanho 40?
Essa hierarquia precisa estar definida na estrutura de dados desde a primeira linha. Se não estiver, você vai estar escrevendo cadeias cada vez mais torturadas de VLOOKUP na terceira semana.
Em maio de 2026, o Google Sheets suporta até 10 milhões de células por planilha (conforme a documentação oficial do Google). Um catálogo de 8.000 SKUs rastreado ao longo de 52 semanas com 15 colunas de atributos chega a 6,2 milhões de células — a aritmética comum de uma planilha sazonal de uma marca DTC de médio porte. Você vai sentir os problemas de desempenho bem antes de atingir o limite de células, geralmente em torno de 50.000 linhas de histórico de movimentações.
Planilha de Controle de Estoque para Moda: Estrutura Base das Abas
Você precisa de no mínimo três abas: Estoque (a fonte da verdade), Movimentações (entradas e saídas) e Dashboard (o que o seu diretor de operações realmente consulta). Opcionais, mas muito úteis: Alerta de Reposição e Estoque Parado.
Aba Estoque — colunas mínimas:
| Coluna | Finalidade |
|---|---|
| SKU | Código Estilo-Cor-Tamanho (ex.: BLZ-MON-MRN-40) |
| Estilo | Nome do estilo pai (Blazer Monaco) |
| Cor | Variante de cor (Marinho) |
| Tamanho | Etiqueta de tamanho (40) |
| CD | Código do Centro de Distribuição (para operações multi-CD) |
| Em Estoque | Unidades disponíveis |
| A Caminho | Quantidade de PO em trânsito |
| Ponto de Reposição | Limite que dispara o alerta de compra |
| Qtd. de Reposição | Quantidade padrão do pedido |
| Custo | Custo unitário |
| Preço de Venda | Preço unitário de venda |
| Última Atualização | Data da última movimentação |
A coluna de SKU é a sua chave de junção. Tudo o que vem depois — movimentações, POs, dados de vendas — se conecta pelo SKU. Se o seu ERP (TOTVS, SAP ou similar) exporta códigos de estilo em um formato e o seu operador logístico exporta em outro, cada fórmula quebra exatamente aqui. (Vai acontecer. Resolva antes que o problema resolva por você — voltamos a isso mais adiante.)
Rastreamento de Estoque de Vestuário: Fórmulas Essenciais
Calculando o estoque disponível a partir de um log de movimentações — quando você importa movimentações do ERP ou WMS em vez de editar o estoque diretamente:
=SUMIF(Movimentações!$B:$B, A2, Movimentações!$E:$E)
Onde a coluna B em Movimentações é o SKU e a coluna E é a quantidade (positiva para entradas, negativa para saídas). Funciona bem até 5.000 linhas de movimentação. Acima de 40.000 linhas, o SUMIF em intervalos abertos começa a travar de forma perceptível. Mude para:
=QUERY(Movimentações!A:F, "SELECT SUM(E) WHERE B = '"&A2&"' LABEL SUM(E) ''", 0)
O QUERY processa exportações de 80.000 linhas da maioria dos operadores logísticos sem engasgar. A contrapartida é que ele retorna erro quando não há correspondência — envolva com IFERROR(..., 0).
Flag de alerta de reposição:
=IF((C2+D2) <= E2, "REPOR", "")
Em Estoque + A Caminho versus Ponto de Reposição. Simples, mas o +D2 faz toda a diferença — disparar uma reposição quando você já tem 500 unidades em PO é o caminho mais rápido para acumular 18 meses de estoque em uma variante de cor que ninguém quer.
Flag de estoque parado — unidades sem movimentação há 90 dias ou mais:
=IF(AND(C2>0, HOJE()-L2>=90), "PARADO", "")
Isso exige que a coluna Última Atualização contenha uma data de verdade, não uma string de texto. Normalmente não contém, porque o seu ERP exporta no formato 07/05/2026 (DD/MM/AAAA, padrão brasileiro) e o operador logístico exporta 2026-05-07 (ISO 8601), e os dois formatos convivem na coluna L desde o primeiro trimestre. Corrija com:
=IFERROR(DATEVALUE(TEXT(L2,"AAAA-MM-DD")), IFERROR(DATEVALUE(L2), "DATA INVÁLIDA"))
Esse wrapper sobrevive à maioria das colunas com formatos misturados — ISO 8601, data curta brasileira e números seriais do Excel. Não vai sobreviver a strings como "07 Mai 2026" sem ajuste adicional, mas esses são mais raros nas exportações de ERP.
O Problema da Consolidação por Estilo
O seu diretor de operações não quer ver 30 linhas para o Blazer Monaco. Ele quer uma linha: total de unidades, valor total, status. Essa consolidação é exatamente onde a maioria das planilhas de controle de estoque para moda desmorona.
A solução mais limpa é um intervalo separado de Resumo por Estilo usando SUMIF contra a coluna de Estilo:
=SUMIF(Estoque!$B:$B, A2, Estoque!$F:$F)
Estilo na coluna B, Em Estoque na coluna F, nome do estilo em A2 do seu resumo. Isso retorna o total disponível somando todas as cores e tamanhos daquele estilo.
Para a consolidação por variante de cor, você precisa de SUMIFS:
=SUMIFS(Estoque!$F:$F, Estoque!$B:$B, A2, Estoque!$C:$C, B2)
Correspondência de estilo na coluna B, correspondência de cor na coluna C. Funciona bem até 10.000 linhas de SKU. Acima disso, o SUMIFS em referências de colunas inteiras começa a adicionar segundos a cada recálculo. Trave seus intervalos nos limites reais dos dados (ex.: $F$2:$F$8001) e configure o cálculo como manual se a planilha funciona como arquivo de referência e não como dashboard ao vivo.
Dashboard da Planilha de Estoque: O Que os Gestores Realmente Perguntam
Três perguntas aparecem em toda reunião de operações de moda:
- Qual é o valor total do nosso estoque por categoria?
- O que está parado e precisa de liquidação?
- O que precisa ser reposto antes da próxima coleção?
Valor total em estoque por categoria — assumindo que você tem uma coluna de Categoria:
=QUERY(Estoque!A:K, "SELECT B, SUM(F*J) WHERE F > 0 GROUP BY B LABEL SUM(F*J) 'Valor Total'", 1)
Isso agrupa por Estilo e multiplica Em Estoque (col F) pelo Custo (col J). O resultado cai diretamente na aba do dashboard como uma tabela dinâmica ao vivo. Formatar a saída com formatação condicional na coluna Valor Total dá a visão rápida que o gestor precisa em 10 segundos.
Tabela de estoque parado — o FILTER traz as linhas relevantes:
=FILTER(Estoque!A:L, (Estoque!F:F>0)*(HOJE()-Estoque!L:L>=90))
Com 8.000 linhas de SKU, o recálculo leva menos de 2 segundos. Acima de 50.000 linhas, use QUERY:
=QUERY(Estoque!A:L, "SELECT * WHERE F > 0 AND L <= date '"&TEXT(HOJE()-90,"AAAA-MM-DD")&"'", 1)
Alerta de reposição — mesmo padrão: filtre onde (Em Estoque + A Caminho) ≤ Ponto de Reposição e Em Estoque > 0 (não faz sentido repor um SKU descontinuado).
O Problema de Inconsistência de SKU
Aqui está o que realmente derruba as planilhas de controle de estoque para moda: o seu ERP exporta o SKU como BLZ-MON-MRN-40 e o operador logístico exporta como BLZMON-MRN-40 (sem hífen após o código do estilo, porque alguém configurou diferente em 2019). Todo SUMIF retorna zero. Toda junção silenciosamente falha.
Segundo o relatório Gestão de Estoques no Varejo Brasileiro publicado pelo ILOS (Instituto de Logística e Supply Chain, 2024), inconsistências de cadastro são a principal causa de divergências de inventário em operações com múltiplos sistemas integrados — acima de erros de picking ou de recebimento físico. No contexto de planilhas, esse problema se manifesta exatamente na chave de junção.
Antes de construir qualquer camada de fórmulas, audite seus formatos de SKU com:
=NÚM.CARACT(A2)
Aplique isso na coluna inteira de SKU e ordene por comprimento. Valores discrepantes quase sempre apontam uma inconsistência de formatação. Em seguida, use SUBSTITUIR para normalizar:
=SUBSTITUIR(ARRUMAR(MAIÚSCULA(A2)), " ", "-")
MAIÚSCULA resolve divergências de capitalização. ARRUMAR elimina espaços antes e depois (invisíveis, sempre presentes em importações de CSV). SUBSTITUIR normaliza SKUs separados por espaço para o padrão com hífen. Faça isso em uma coluna auxiliar e use a versão limpa como base das junções — nunca a importação bruta.
Quando a Planilha de Controle de Estoque Deixa de Ser Suficiente
Planilhas funcionam bem para controle de estoque de moda até aproximadamente três CDs, 10.000 SKUs ativos e volumes semanais de movimentação abaixo de 50.000 linhas. Além desses limites, o tempo de recálculo e a necessidade de atualização manual começam a gerar risco operacional real — recálculos de 30 segundos e dados de estoque com 24 a 48 horas de defasagem porque ninguém quer atualizar a planilha.
A matemática de alocação entre múltiplos CDs — distribuir unidades disponíveis entre locais de despacho com base em sinais de demanda — também é onde a lógica em planilha começa a ficar frágil. Dá para montar com IFs aninhados e ARRAYFORMULA, mas qualquer mudança de schema na exportação do WMS vai quebrar tudo silenciosamente, e você só vai descobrir quando um cliente ligar reclamando.
Dito isso, para operações com um único CD e menos de 10.000 SKUs, uma planilha bem estruturada no Google Sheets supera a maioria das implementações de software de estoque em semanas de setup e em dezenas de milhares de reais em licenciamento anual.
Como Evitar que Tudo Quebre na Segunda-Feira
Duas coisas destroem planilhas de controle de moda: mudança de schema (o ERP adiciona uma coluna e desloca tudo para a direita) e corrupção de formato de data (alguém exporta de um sistema novo com um padrão diferente). Os dois têm solução: use intervalos nomeados em vez de referências por letra de coluna, e envolva todo cálculo com datas em IFERROR.
Para os intervalos nomeados: selecione a coluna de SKU, vá em Dados → Intervalos nomeados e chame de estoque_sku. Toda fórmula que referenciava Estoque!$A:$A passa a usar estoque_sku. Quando o schema mudar, você atualiza a definição do intervalo em um único lugar — e todas as fórmulas dependentes acompanham automaticamente.
Se você usa o ModelMonkey na sua planilha, pode pedir que ele audite as referências das suas fórmulas depois de qualquer mudança de schema — ele identifica intervalos quebrados e sugere referências atualizadas sem você precisar rastrear cada fórmula manualmente. O que normalmente toma 45 minutos numa segunda-feira de manhã leva cerca de 2 minutos com um assistente de IA na barra lateral. Escolha um plano do ModelMonkey — funciona tanto no Google Sheets quanto no Excel.
Perguntas Frequentes
Qual é a diferença entre controlar estoque por SKU e por estilo em uma planilha de moda?
Controlar por SKU significa rastrear cada combinação de estilo, cor e tamanho como uma linha independente — é o nível necessário para operações de fulfillment e compras precisas. Controlar por estilo é uma visão agregada usada em análises de desempenho de coleção e apresentações para investidores. Uma planilha bem estruturada faz os dois: mantém o SKU como unidade de dados e usa SUMIF ou QUERY para gerar a visão por estilo nos relatórios.
Como importar dados do TOTVS ou SAP para a planilha sem quebrar as fórmulas?
Crie uma aba de staging chamada "Importação" e nunca cole dados diretamente nas abas estruturadas. Na aba Importação, aplique as fórmulas de normalização de SKU (MAIÚSCULA, ARRUMAR, SUBSTITUIR) e de conversão de data. Só então use IMPORTRANGE ou copie os valores limpos para a aba Estoque. Essa camada intermediária absorve qualquer mudança de schema do ERP sem afetar as fórmulas de cálculo.
A partir de quantos SKUs devo considerar um software de gestão de estoques no lugar de planilhas?
O limiar prático é em torno de 10.000 SKUs ativos com movimentações diárias, especialmente se você opera mais de dois Centros de Distribuição. Abaixo disso, o Google Sheets com a estrutura descrita neste guia costuma ser mais rápido de implementar e mais barato de manter do que qualquer WMS do mercado. Acima disso, o custo de manutenção da planilha — tempo de analista para corrigir fórmulas quebradas e reconciliar divergências — geralmente justifica a migração.
Como calcular o giro de estoque por SKU diretamente na planilha?
Use o custo médio do período dividido pelo estoque médio. Se você tem o histórico de movimentações na aba Movimentações com datas, uma QUERY calcula a saída total nos últimos 90 dias por SKU; divida pelo saldo médio (estoque inicial + final dividido por 2) para obter o giro trimestral. Multiplique por quatro para anualizar. Isso identifica SKUs com giro abaixo de 1x ao ano — candidatos prioritários a liquidação antes de virar estoque parado.
Como tratar devoluções de clientes na planilha de controle de estoque para moda?
Registre devoluções como entradas positivas na aba Movimentações com um tipo de movimentação separado (ex.: DEV-CLIENTE). Isso mantém o histórico auditável e permite filtrar devoluções do cálculo de vendas brutas. Se o produto retornado não pode ser revendido (avaria, troca de coleção), registre uma saída imediata do mesmo SKU com tipo BAIXA para evitar que o saldo inflado dispare alertas de reposição equivocados.