# Google Ads PX3 - Valor de conversao (biddable)

## Contexto
Ate 2026-09-11 as conversion actions do Google Ads da PX3 estavam configuradas com
`default_value = 0` para as conversions biddable de captacao, entao o campo
`metrics.conversions_value` retornava 0 e o dashboard nao mostrava receita atribuida
pelo Google Ads.

Bruno (bruno-trafego) configurou em 2026-09-11 R$50 por lead via API nas duas
conversion actions ativas hoje.

## Estado atual (confirmado via GoogleAdsService, 2026-09-11)

Consulta usada:
```sql
SELECT conversion_action.id, conversion_action.name,
       conversion_action.primary_for_goal,
       conversion_action.category,
       conversion_action.value_settings.default_value,
       conversion_action.value_settings.default_currency_code,
       conversion_action.value_settings.always_use_default_value
FROM conversion_action
WHERE conversion_action.status = 'ENABLED'
```

| ID          | Nome                             | Primary | Default | Always | Category          |
|-------------|----------------------------------|---------|---------|--------|-------------------|
| 7155757663  | [Site] Contato - Whatsapp        | True    | R$50,00 | True   | CONTACT           |
| 7155827503  | [Site] Envio formulario          | True    | R$50,00 | True   | SUBMIT_LEAD_FORM  |
| 304200672   | PhotoRF                          | True    | R$399,00| True   | PURCHASE          |
| 309899412   | PhotoRF-Hotmart                  | True    | R$1,00  | False  | PURCHASE          |
| 7106338792  | [LP] - Contato Whatsapp          | True    | R$1,00  | True   | CONTACT           |
| 7147441652  | Contato teste                    | True    | R$1,00  | False  | CONTACT           |
| 1025678063  | YouTube channel subscriptions    | True    | R$1,00  | True   | ENGAGEMENT        |
| 7457118427  | YouTube follow-on views          | True    | R$1,00  | True   | YOUTUBE_FOLLOW_ON |
| 734330806   | VISITANTES LP ECOMMERCE DESC.    | True    | R$0,00  | True   | PAGE_VIEW         |
| 734415063   | INSCRITOS ECOMMERCE DESC.        | True    | R$0,00  | True   | SIGNUP            |
| 6985988777  | Android installs (all other)     | False   | R$0,00  | True   | DOWNLOAD          |

## Conversion actions que efetivamente alimentam a receita atribuida
As biddable de captacao rodando hoje sao:
- `[Site] Contato - Whatsapp` - R$50/lead
- `[Site] Envio formulario` - R$50/lead

`always_use_default_value = True` significa que TODA conversao registrada
recebe R$50 automatico, sem precisar mandar valor via tag/gtag.

`primary_for_goal = True` significa que a conversion action e considerada
na coluna `conversions` (biddable) e no `conversions_value`.

## Impacto no dashboard
- Antes: metrics.conversions_value = 0 -> KPI "Receita atribuida" e "ROAS"
  ficavam em "-" mesmo com conversao registrada.
- A partir de agora: cada nova conversao de contato/formulario soma
  R$50 no `metrics.conversions_value` e o dashboard vai refletir isso
  automaticamente nas telas Google Ads e home (/api/overview).

## Onde no codigo
- app.py, funcao `fetch_google_ads()`: puxa `metrics.conversions_value`,
  `metrics.all_conversions` e `metrics.all_conversions_value` alem
  das metricas antigas. Calcula ROAS = conv_value / gasto.
- templates/google_ads.html: KPIs "Receita atribuida" e "ROAS" +
  colunas na tabela de campanhas.
- templates/index.html: mesmos KPIs no card Google Ads da home.

## Observacoes
- Conversions HISTORICAS (antes da configuracao de valor) NAO recebem
  valor retroativo. So conta pra frente. Consequencia: nos primeiros
  dias apos o setup, `conversions_value / conversions` vai ficar
  abaixo de R$50 (mistura de dias com valor e sem valor).
- `all_conversions_value` inclui tambem as non-biddable (nao usadas
  pra bidding, mas registradas). Colhemos os dois pra caso o Renato
  queira analisar mix.

Ultima verificacao: 2026-09-11 via `/api/google-ads`.
