# Pesquisa de Preços em Licitações (PNCP): preço homologado (`br-intelligence/pesquisa-precos-pncp`) Actor

Quanto o governo pagou por um produto? Preços vencedores (homologados) de licitações do PNCP, com menor preço, mediana, média saneada e link de cada compra. Para pesquisa de preços (Lei 14.133, art. 23) e para acertar o lance. Brazil public procurement prices.

- **URL**: https://apify.com/br-intelligence/pesquisa-precos-pncp.md
- **Developed by:** [BR Intelligence](https://apify.com/br-intelligence) (community)
- **Features:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $10.00 / 1,000 preço encontrados

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Pesquisa de Preços em Licitações (PNCP)

**Quanto o governo pagou por um produto?** Digite o produto e receba os **preços vencedores (homologados)** das licitações mais recentes do **PNCP — Portal Nacional de Contratações Públicas**, com **menor preço, mediana, média, média saneada e maior preço**, e o link de cada compra.

Serve para:

- **Servidores e pregoeiros:** fazer a pesquisa de preços exigida pela Lei 14.133/2021 (art. 23) em minutos, com fonte oficial e link de cada compra.
- **Empresas que vendem para o governo:** saber por quanto o produto foi vendido em outras licitações antes de dar o lance.
- **Consultorias e contadores:** montar referências de preço para os clientes.

### O que você recebe

Para cada preço encontrado:

- **Preço unitário homologado** e **preço estimado** pelo órgão (com a diferença em %).
- **Unidade e quantidade** compradas.
- **Descrição do item** como está no edital.
- **Órgão, município, UF, modalidade e data do resultado.**
- **Empresa vencedora e porte** (ME, EPP...), quando é uma sociedade. Pessoa física e empresário individual não são exibidos (LGPD).
- **Link do edital** no PNCP.

E um **relatório (HTML)** por produto, com:

| Produto | Unidade | Menor | Mediana | Média saneada | Maior |
|---|---|---|---|---|---|
| Cadeira giratória | Unidade | R$ 222,10 | R$ 645,00 | R$ 566,94 | R$ 1.949,19 |
| Notebook | Unidade | R$ 2.569,00 | R$ 4.829,50 | R$ 4.845,14 | R$ 16.999,00 |

*Exemplo de uma execução de teste em novembro de 2026 (15 licitações por produto, todo o Brasil). Os valores mudam a cada pesquisa.*

**Média saneada:** média sem os preços abaixo de 50% ou acima de 150% da mediana, para tirar valores inexequíveis ou excessivos. A análise crítica final é sempre de quem faz a pesquisa.

### Como usar

1. Em **Produtos ou serviços**, escreva um produto por linha, do jeito que aparece nos editais ("papel A4", "notebook", "cadeira giratória").
2. Opcional: **estados**, **período** (padrão: 12 meses) e **palavras para excluir** ("locação", "manutenção", "rodas").
3. Clique em **Start**. Veja a tabela **"Preços"** e o **relatório**.

```json
{ "produtos": ["papel A4", "notebook"], "ufs": ["MG", "SP"], "meses": 12, "maxLicitacoesPorProduto": 20 }
```

**Dica de busca:** o item precisa **começar** pelo produto. "papel A4" encontra "Papel A4 75 g/m²", mas não "Envelope para papel A4". Assim a pesquisa não mistura produtos diferentes. Para ser mais específico, use mais palavras ("notebook i5") ou aspas para frase exata.

### Preço

Você paga **por preço encontrado** (cada linha da tabela). O valor aparece no topo desta página. O limite de gasto que você definir é sempre respeitado: a pesquisa para quando ele é atingido. **Dá para testar sem pagar:** o plano gratuito da Apify inclui US$ 5 de crédito por mês.

### Também da BR Intelligence

- [Monitor de Licitações (PNCP)](https://apify.com/br-intelligence/monitor-licitacoes-pncp): receba todo dia as licitações abertas do seu ramo.
- Canal gratuito no Telegram com licitações do dia: [t.me/brintelligence](https://t.me/brintelligence).

### Fonte e responsabilidade

Dados públicos do PNCP (pncp.gov.br), publicados pelos próprios órgãos. Os preços são um ponto de partida: confira especificação, quantidade, unidade e data de cada compra. Nenhum dado de pessoa física é exibido.

***

### English

**Brazilian public procurement prices.** Type a product and get the **winning (awarded) unit prices** from recent tenders on PNCP, Brazil's official procurement portal, with min, median, mean, trimmed mean and max per product, plus buyer, location, date, winning company size and a link to each tender. Useful for government price research (Law 14.133/2021, art. 23) and for suppliers pricing their bids. Pay per price found.

# Actor input Schema

## `produtos` (type: `array`):

Um produto por linha, do jeito que aparece nos editais (ex.: "papel A4", "notebook", "cadeira giratória"). Sem acento e sem diferença de maiúsculas; singular também acha plural. Várias palavras na mesma linha exigem todas. Use aspas para frase exata. Até 20 produtos por execução.

## `palavrasExcluidas` (type: `array`):

Itens com estas palavras ficam de fora (ex.: "locação", "manutenção", "recarga").

## `ufs` (type: `array`):

Deixe vazio para todo o Brasil. Com estados, a pesquisa olha até o número máximo de licitações em cada estado.

## `meses` (type: `integer`):

Considera licitações publicadas nos últimos N meses (1 a 24).

## `maxLicitacoesPorProduto` (type: `integer`):

Quantas licitações encerradas (as mais recentes) analisar para cada produto. Mais licitações = mais preços e execução mais longa (cerca de 2 a 4 segundos por licitação).

## `maxItensPorLicitacao` (type: `integer`):

Uma licitação pode ter vários itens parecidos (ex.: notebooks de modelos diferentes). Limite de itens lidos em cada uma.

## `mostrarFornecedor` (type: `boolean`):

Mostra a razão social e o porte da empresa vencedora. Fornecedor pessoa física nunca é exibido (LGPD).

## Actor input object example

```json
{
  "produtos": [
    "papel A4",
    "notebook"
  ],
  "palavrasExcluidas": [],
  "ufs": [],
  "meses": 12,
  "maxLicitacoesPorProduto": 15,
  "maxItensPorLicitacao": 3,
  "mostrarFornecedor": true
}
```

# Actor output Schema

## `precos` (type: `string`):

Tabela em português: preço unitário, unidade, item, órgão, local, data do resultado e link do edital.

## `relatorio` (type: `string`):

Menor preço, mediana, média, média saneada e maior preço por produto, com a lista de preços.

## `resumo` (type: `string`):

Estatísticas por produto, para planilhas e integrações.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "produtos": [
        "papel A4",
        "notebook"
    ],
    "maxLicitacoesPorProduto": 15
};

// Run the Actor and wait for it to finish
const run = await client.actor("br-intelligence/pesquisa-precos-pncp").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "produtos": [
        "papel A4",
        "notebook",
    ],
    "maxLicitacoesPorProduto": 15,
}

# Run the Actor and wait for it to finish
run = client.actor("br-intelligence/pesquisa-precos-pncp").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "produtos": [
    "papel A4",
    "notebook"
  ],
  "maxLicitacoesPorProduto": 15
}' |
apify call br-intelligence/pesquisa-precos-pncp --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,br-intelligence/pesquisa-precos-pncp"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/PdWeFSTNR48dphQUy/builds/ff3Ef1DGUyvObnT5A/openapi.json
