Vamos ser totalmente honestos: a maioria dos sistemas de afiliados no mercado são horríveis. Ou eles são extremamente confusos, desorganizados e lentos, ou parece que foram projetados nos anos 90. Ou ainda pior: são uma mistura dos dois casos. Alguns podem ter metade das ferramentas que você precisa, mas faltam recursos essenciais que os afiliados desejam. 😩

Desde que iniciamos a Kinsta, tem sido nossa missão jamais lançar algo abaixo da média para nossos clientes. Um padrão que mantemos é que, se for algo que nós mesmos não usaríamos, precisamos melhorar e encontrar outra forma de entregá-lo. Assim como fizemos com nosso painel MyKinsta, decidimos desenvolver nosso próprio programa.

Hoje, discutiremos alguns dos motivos pelos quais optamos por seguir essa rota, tanto do aspecto dos negócios e de desenvolvimento, quanto o resultado final que tivemos (do MVP até o produto final).

Por Que Implementamos Nosso Próprio Programa

Quando começamos a pesquisar o que precisava ser feito para implementarmos um sistema de afiliados, rapidamente percebemos que não existia uma opção pronta para o que queríamos. Esses são os principais motivos:

  • O maior problema era que nosso sistema de afiliados precisava ser fortemente associado aos nossos planos e sistema de assinaturas, não a um provedor terceirizado.
  • Gestão de marca é muito importante para nós. Embora alguns sistemas de afiliados ofereçam soluções white-label, a maioria deles são implementações imaturas e nem sempre totalmente transparentes. Desenvolvermos por conta própria nos permitiria ter controle completo sobre o design e a marca sem precisarmos nos preocupar com soluções white-label.
  • Depender de um sistema terceirizado nos impediria de adicionar novos recursos rapidamente. A maior parte do nosso painel MyKinsta personalizado foi construída inteiramente baseada nos feedbacks dos usuários e é por isso que se tornou uma das melhores ferramentas de gerenciamento de sites WordPress na indústria! Tudo isso graças aos nossos clientes incríveis. 👏 Sabíamos que, a partir do momento que fizéssemos um lançamento junto a uma solução terceirizada, feedbacks e solicitações começariam a aparecer e não seríamos capazes de fazer as alterações requisitadas.
  • A capacidade de oferecer e criar relatórios personalizados, não só para nossos afiliados, mas para nossos administradores também, era algo que não conseguiríamos viver sem. Amamos e precisamos de dados! De que outra forma você seria capaz de tomar decisões estratégicas no futuro? Extrair relatórios de dados também é algo que deve ser feito em nossos planos complexos e sistema de assinatura.
MyKinsta se tornou uma das melhores ferramentas de gerenciamento de sites #WordPress na indústria! Como? Ouvindo nossos clientes.👂 Click to Tweet

Aprofundando um pouco mais, sabíamos que, uma vez que lançássemos o sistema de afiliados ao público geral, não poderíamos mais interrompê-lo. Claro, falhas podem aparecer e ser corrigidas, mas se precisássemos mudar de provedor de pagamentos, não poderíamos simplesmente deixar nossos afiliados em modo de espera enquanto continuaríamos recebendo dinheiro que seria destinado a eles.

Além disso, a flexibilidade era uma grande preocupação. E se tivéssemos que fazer alterações internas sobre como as inscrições eram tratadas (e isso acabou acontecendo), seríamos capazes de lidar com múltiplos idiomas e moedas? E os complementos que desenvolvemos ao longo do caminho, como Redis, backups por hora, entre outros? Teríamos sido capazes de desenvolver um painel expansível para nossos usuários?

De uma perspectiva técnica, foi provado ser completamente redundante usar o software de outras empresas. Como temos uma forma particular de atender as assinaturas via Stripe, precisamos definir nossa própria lógica sobre o que é um referido e qual é o mecanismo de mudança para atualizações e alterações.

Stripe

Embora eu saiba que muitas soluções possuem APIs, escrever o código para enviar nossos dados para a API seria 80% do trabalho. Por que não trabalhar nos 20% adicionais e criar nossa própria interface de usuário, algo que somos muito adeptos?

Custos Envolvidos

Outra grande preocupação era o preço. Existem produtos baratos no mercado, mas eles não passaram por nosso filtro, devido às preocupações com recursos ou flexibilidade. Outros cuidam bem de pagamentos e possuem muitos recursos, mas suas taxas também aumentam rapidamente. Vamos analisar os custos de algumas das soluções mais populares. Observação: alguns desses valores talvez possam ser negociados, com base no volume de vendas e outros fatores.

  • ShareASale: US$550 taxa única de rede, US$100 de depósito e 20% de taxa de transação sobre cada venda.
  • CJ: US$3.000 taxa de rede, US$3.000 de depósito e 30% de taxa de transação ou US$0,30 sobre cada venda – o maior valor entre os dois.
  • ClickBank:US$49,95 taxa de ativação, US$2,50 taxa de período de processamento de pagamento e 7,5% taxa de transação + US$1 sobre cada venda.

Digamos que as vendas de afiliados gerem US$250.000 por ano. Aqui está como as taxas se somariam (após os depósitos únicos e as taxas de acesso de rede). Aliás, o que são taxas de acesso de rede? 🤔

  • ShareASale: US$50.000 em taxas
  • CJ:US$75.000 em taxas
  • ClickBank:US$27.000 em taxas

Uau! Isso é bastante. E antes de calcular outras taxas, já estamos fazendo o pagamento do nosso processador Stripe. Também consultamos outros sistemas de afiliados, como Rakuten Marketing e Impact Radius, mas os custos eram ainda maiores.

O benefício de implementar nosso próprio sistema de afiliados é que o maior custo seria simplesmente o tempo de desenvolvimento. Temos talento incrível internamente para construir tudo. Mas, como é possível notar, existem muitas partes em movimento e detalhes a considerar ao escolher entre seguir seu próprio caminho ou optar por uma solução terceirizada.

O Básico Sobre Como Nosso Sistema de Afiliados Funciona

Entrarei em maiores detalhes mais adiante, mas para entender como começamos a desenvolver o produto, é válido entender o fluxo de dados básico.

O ponto de entrada no sistema é um link especial que contém um ID de afiliado. Nós o chamamos de ID de afiliado Kinsta ou KAID para simplificar (exemplo: https://kinsta.com?kaid=iddeafiliado).

A maioria das demais ferramentas de afiliados são muito confusas quando se trata de saber qual URL você deve usar e para onde deve fazer a vinculação. Por isso, desde o início, quisemos torná-lo um processo simples de dois passos.

Passo 1

O primeiro passo seria inserir o local de destino do website Kinsta. Pode ser qualquer página, não apenas nossa home page. Talvez você queira que o link aponte diretamente para nossa página de planos (conforme visto abaixo).

Criar link de afiliado Kinsta

Criar link de afiliado Kinsta

Passo 2

O segundo passo seria gerar o link para que possa simplesmente copiar e colar onde quiser. E também oferecer o HTML que o acompanha com o atributo nofollow (algo muito importante), para estar em conformidade com as diretrizes do Google para links de afiliados.

Gerar link de afiliado e código HTML

Gerar link de afiliado e código HTML

Quando detectamos que um visitante está usando um desses links, enviamos um cookie que contém as informações sobre quem indicou tal usuário. Valorizamos o referido inicial e não oferecemos comissões divididas. Isso é mais justo com o afiliado e leva a uma competição por qualidade ao invés de quantidade.

O Stripe cuida de todas as compras, por isso usamos sua API extensa e (em maior parte) bem documentada para criar usuários, assinaturas, pagamentos iniciais, entre outros. O fluxo de compra ocorre no website, que por sua vez usa a API interna do MyKinsta para iniciar os processos que precisamos para realizar o cadastro do usuário. As informações sobre quem indicou o cliente também são registradas em nosso sistema.

O MVP (Começo do Desenvolvimento)

Sempre que você lança algo novo, pode ser inteligente construir um MVP (produto de viabilidade mínima) e começar sua divulgação imediatamente para testar sua capacidade. Colete feedbacks logo no início e aprenda com eles. Faça adaptações, mudanças e melhorias. Foi exatamente isso que fizemos quando lançamos a Kinsta pela primeira vez e foi como avançamos do $0 até uma receita de sete dígitos.

Sabíamos desde o começo que a parte mais desafiadora do sistema seria a lógica que por trás do monitoramento e cálculo de comissões. Inicialmente, o sistema inteiro foi escrito em PHP e dependia completamente do Stripe para calcular tudo com essa finalidade.

A forma como calculávamos comissões para um referido era consultar todo o histórico do Stripe de assinaturas do referido e descobrir quanto de comissão única era devido e quanto era recorrente. Fatores como tempo decorrido e tipo de plano afetavam o cálculo.

Pagamentos do sistema de afiliados Kinsta

Pagamentos do sistema de afiliados Kinsta

Por exemplo, se a referência foi criada dois dias atrás, obviamente não houve comissão única. Se a referência foi criada quatro meses atrás, tínhamos que emitir a comissão única (que é paga após dois meses) e duas comissões recorrentes (emitidas uma vez por mês após a comissão única).

Para chegar ao valor da comissão a ser paga por mês, fizemos o processo acima para todos as referências para um afiliado específico. Isso provou ser um processo de cálculo mais intenso do que pensamos inicialmente. Sabíamos que faríamos uma mudança, mas descobrimos que havia uma grande harmonização entre funcionalidade e tempo de desenvolvimento.

O front-end foi desenvolvido usando Flight PHP, um micro framework PHP. Criamos algumas rotas, reunimos algumas tabelas e gráficos e seguimos em frente.

FlightPHP

Dica para desenvolver qualquer produto novo. Construa um #MVP, receba feedbacks logo no início e aprenda com eles. 👍 Click to Tweet

Mudando o MVP (Adaptações e Melhorias)

Cerca de 7 meses após o lançamento do modo beta privado e seis meses de operações regulares, precisamos passar por uma reconstrução. Nosso MVP original não foi feito para ser escalável. Uma mudança teve que ser feita na forma como cuidávamos das assinaturas, em virtude de nossos novos complementos e sistemas ultrapassados. Até esse ponto, um cliente sempre precisava de uma assinatura. Tínhamos que alterar isso e permitir múltiplas assinaturas por usuário.

Como nossos clientes sempre possuíam uma e somente uma assinatura, podíamos afirmar com segurança que qualquer assinatura de referido ativa era equivalente a um plano de hospedagem. Em outras palavras, as assinaturas eram o que considerávamos como referidos. Precisávamos fazer uma revisão completa que considerasse nossos clientes no Stripe como nossos referidos.

Clientes referidos no sistema de afiliados Kinsta

Clientes referidos no sistema de afiliados Kinsta

Além disso, a forma pouco otimizada que calculávamos comissões estava começando a ir num caminho ruim. Ela afetava principalmente nossos administradores, mas também tivemos um ou dois afiliados que experimentaram maiores tempos de carregamento, enquanto calculávamos todas as comissões, cada vez que visualizavam o painel.

Para fazer as correções, movemos o sistema completo para o território da combinação Node + React, para que usasse a mesma base que o MyKinsta. Isso permitiria que nossos desenvolvedores participassem muito mais do processo, conforme fosse necessário, e começassem a usar uma linguagem de design mais comum e com maior facilidade.

O Produto Final

Quando finalizamos a reconstrução, nos deparamos com um sistema muito superior e que exigia menos gerenciamento, possuía muito mais recursos, automatizava tarefas comuns de administração de afiliados e que compartilhava da mesma base tecnológica que nosso produto principal, o MyKinsta.

A Base

Agora, o sistema de afiliados roda no Node no back-end e no React no front-end. Ele utiliza GraphQL para nossas necessidades de consultas e Ant Design para o framework de design.

nodejs

Na verdade, há quatro processos separados rodando ao mesmo tempo:

  • Back-End do Afiliado: Este é o back-end de todo o sistema. Ele é completamente fechado para o ambiente externo. Somente comunicações internas podem alcançá-lo. É basicamente o ponto de entrada para o banco de dados. Tudo o que ele faz é aceitar e responder consultas do GraphQL.
  • Painel do Afiliado: Essa é a parte que o usuário acessa no sistema de afiliados. Ele consiste de diversos componentes do React para receber dados através das consultas do GraphQL pelo back-end.
  • Administrador do Afiliado: Essa é uma interface de administração especial que os administradores acessam para agregar estatísticas, gerenciar aplicações e desempenhar outras tarefas.
  • Sincronização do Afiliado: Um conjunto de cron jobs que mantém tudo em sincronia – entraremos em maiores detalhes em breve, uma vez que se trata da espinha dorsal do sistema.

Melhorias nos Dados e Cálculos

Na versão inicial do sistema, calculamos tudo ad-hoc. Isso provou ser bastante intenso no que se tratava de dados, mas também não era algo bom, porque se mudássemos um detalhe – como o valor de comissão pago – tudo era alterado em retrospecto ou precisávamos mexer em todo o código, com base em instruções “se” (“if”).

O novo sistema de afiliados usa dois mecanismos para torná-lo muito mais eficiente: uma forma melhor de apanhar os dados do Stripe e um sistema de contabilidade para registrar eventos.

O sistema de eventos garante que tudo que ocorra, permaneça no lugar certo. Se um afiliado deve receber uma comissão única, registramos uma comissão e a associamos a ele. Em seguida, marcamos aquele usuário e nunca mais atribuímos uma comissão única novamente. O mesmo mecanismo se aplica às comissões recorrentes. Uma vez que o período tem sua comissão recorrente calculada e registrada, nós “esquecemos” dele.

Isso significa que tais cálculos precisam ser feitos apenas para períodos curtos de tempo e conjuntos de comissões são formados ao simplesmente somar algumas linhas do banco de dados.

O segundo componente depende de cron jobs para reunir dados. Coletamos todas as informações do Stripe a cada 10 minutos e as salvamos no banco de dados local, fazendo algumas modificações para facilitar os processos seguintes.

Por exemplo, leva uma quantidade considerável de código para descobrir se uma assinatura altera eventos que envolvem um plano de hospedagem. Podemos fazer esse cálculo ad-hoc quando necessário, mas ao invés de fazê-lo, usamos um cron job para adicionar uma marcação ao objeto salvo. Como estamos coletando 10 minutos de dados, o processo inteiro leva em torno de 100 milissegundos e torna as consultas de seleção seguintes muito mais eficientes.

Um segundo cron job organiza os dados no local final, calculando comissões, criando eventos e realizando outras operações. 

Você ainda está procurando por esse host perfeito do WordPress?

Experimente a hospedagem WordPress gerenciada premium da Kinsta para experimentar seu site sem problemas.
  • Controles estilizados que representam a gerência Totalmente gerenciado
  • Um escudo com marcação representadando a segurançaSeguro como Fort Knox
  • Junção de linhas que representam migraçõesMigrações gratuitas
  • Três divisórias que representam a velocidade do servidorMáxima velocidade
  • Seta circular com ponto central representando backupsBackups diários
  • Hexágonos compensados que representam nossa infraestrutura de servidoresGoogle Cloud Platform

O motivo para serem feitos separadamente é que a primeira operação é muito simples, mas depende do Stripe, enquanto a segunda é consideravelmente mais intensa e complexa. Se identificarmos um bug na segunda operação que a leve a falhar, não precisaremos voltar a sincronizar horas/dias/semanas de dados do Stripe. Teremos apenas que executar novamente a segunda operação.

Esta configuração proporciona diversos outros benefícios, pois cada cron job é formado por vários componentes distintos, como obtenção de novas assinaturas, aprovação de comissões pendentes, entre outros. No futuro, talvez façamos uma divisão ainda maior de nossos cron jobs para nos certificarmos de que seremos capazes de capturar os problemas o mais cedo possível sem afetar outras partes do sistema.

Lutando com tempo de inatividade e problemas no WordPress? Kinsta é a solução de hospedagem projetada para economizar seu tempo! Confira nossos recursos

Após otimizar nossos cálculos e nos movermos para um novo framework, nosso painel de afiliados agora carrega duas vezes mais rápido! 🚀

O Sistema e o Programa de Afiliados em Ação

Este post não estaria completo sem mostrar nosso sistema e o programa de afiliados em ação. Aqui estão alguns recursos e vantagens que oferecemos para todos os afiliados da Kinsta. 

Painel de afiliados Kinsta

Painel de afiliados Kinsta

1. Comissões Imbatíveis (Bônus de Assinatura + Renda Recorrente)

Trabalhamos muito tempo e muito duro em nossa estrutura de comissões e pagamentos, pois consideramos que esse provavelmente é um dos fatores mais importantes para os afiliados. Na verdade, muitos blogueiros e proprietários de websites que hospedamos recebem toda sua renda a partir do programa de afiliados. Nos orgulhamos de oferecer os maiores pagamentos da indústria! Para cada plano de hospedagem Kinsta que alguém indica, a pessoa recebe um bônus único de assinatura, da seguinte forma:

  • Plano Starter (US$50)
  • Plano Pro (US$100)
  • Business 1-4 (US$150)
  • Enterprise 1-2 (US$500)

E não paramos por aí! Afiliados também recebem 10% de comissão recorrente mensal para cada referido, além do bônus de inscrição. Abaixo estão alguns dos diversos exemplos que temos sobre como os pagamentos das comissões funcionam. Veja mais exemplos de cenários de pagamentos em nossos termos de afiliados.

Exemplo de Bônus de Assinatura

Exemplo de pagamento de afiliado

Exemplo de pagamento de afiliado

Exemplo de Comissão Recorrente

Exemplo de comissão recorrente

Exemplo de comissão recorrente

2. Monitoramento em Tempo Real

Nosso painel de afiliados é diferente de qualquer outro no mercado! Você pode consultar os dados de afiliado quase em tempo real, visualizações de páginas, assinaturas, informações aprofundadas de planos e até mesmo detalhar referências individuais e verificar todos os pagamentos daquele referido (conforme visto abaixo).

Detalhes de pagamento de afiliados Kinsta

Detalhes de pagamento de afiliados Kinsta

3. Alto Valor Vitalício

Uma das grandes vantagens de indicar pessoas para Kinsta é que temos um valor vitalício incrivelmente alto para cada cliente. Nosso churn rate está abaixo de 5%! Isso significa que os afiliados podem receber comissões recorrentes de forma vitalícia daquele cliente.

4. Pagamentos Mensais

Não há necessidade de nossos afiliados se preocuparem ou marcarem datas em seus calendários. Sempre realizamos os pagamentos pontualmente e os enviamos para sua conta do PayPal a cada mês.

5. Materiais Promocionais

Precisa de banners para promover a Kinsta em um website ou blog? Não se preocupe, temos muitos deles! Os banners e logos promocionais podem ser acessados facilmente, diretamente pelo painel de afiliado.

Banners de afiliados Kinsta

Banners de afiliados Kinsta

6. Longa Janela de Conversão

Pessoas são ocupadas e pode ser que não convertam imediatamente. Muitas vezes, elas gostam de pesquisar e comparar opções quando se trata de escolher uma nova hospedagem WordPress. É por isso que oferecemos cookies de monitoramento de 60 dias aos afiliados, para garantir que eles sejam creditados pela venda.

7. Pronto para ITP 2.0

O sistema de afiliados Kinsta está pronto para ITP 2.0! Intelligent Tracking Prevention 2.0 (ITP) é uma nova configuração da Apple presente no Safari 11 e versões superiores que essencialmente limita o acesso das soluções de monitoramento baseadas na rede em cookies no navegador. De acordo com a Statcounter, em outubro de 2018, o Safari ainda possuía mais de 15% de fatia de mercado dos navegadores. Portanto, essa mudança significa um grande impacto na indústria da publicidade.

Entretanto, não se preocupe. O sistema de afiliados Kinsta depende apenas de cookies próprios, sem rejeição ou outros métodos quem evitem o ITP. Como resultado, todos os referidos serão monitorados e registrados de maneira apropriada como eram antes do ITP 2.0.

Desenvolvemos nosso sistema deliberadamente sem recorrer aos métodos “anti-ITP” pelos seguintes motivos:

  1. Acreditamos no monitoramento honesto, transparente e em reunir a menor quantidade de dados pessoais possível.
  2. Não precisamos monitorar visitantes ao longo de diversos sites.
  3. Antecipamos que as regras da web se tornarão mais restritas ao longo do tempo.

Você pode ler mais sobre as ramificações do ITP 2.0.

8. Painel Multilíngue – Disponível em Cinco Idiomas

Nosso painel de afiliados Kinsta agora está disponível em cinco idiomas diferentes e mais estão por vir. Atualmente, você pode escolher entre:

  • Inglês
  • Alemão
  • Francês
  • Espanhol
  • Italiano

9. Ajudar Afiliados a Ter Sucesso

Além de construir um sistema e um painel de afiliados incríveis, nós realmente queremos que nossos afiliados tenham sucesso. Não há limite do dinheiro que você pode ganhar. E é completamente gratuito para todos participarem. Registre-se aqui.

Observação: Aprovamos as contas de afiliados manualmente para garantir que os sites respeitem nossos termos de afiliados.

A equipe de marketing da Kinsta, juntamente com nosso gerente de afiliados, está aqui para te ajudar. Ficamos felizes em proporcionar dicas e estratégias sobre formas para levar a promoção dos serviços a um novo nível. Na verdade, estamos trabalhando na produção de conteúdo adicional em nosso blog voltado especificamente para afiliados e formas de aumentar os ganhos.

Resumo

Nossa implementação atual provou ser muito mais estável, veloz e oferecer uma experiência melhor para nossos usuários e administradores. Ela formulou uma fundação sólida, baseada na forma como podemos desenvolver um produto e um programa fantásticos.

Um grande benefício é que agora podemos nos focar mais em melhorias para os usuários. Adicionamos mais gráficos, monitoramento de URL e diversos recursos alguns meses após seu lançamento. Planejamos melhorar a experiência do usuário e oferecer ferramentas que permitam que nossos afiliados ganhem ainda mais.

Estamos longe de ter terminado! 🤘

Pensando em criar seu próprio sistema de afiliados? Não vamos mentir, é preciso de muito trabalho, mas vale muito a pena o tempo e o esforço investidos. Agora temos um sistema que nossa equipe inteira se orgulha e que nossos afiliados adoram usar.