Field Margin Analyst
Says which field made money, not which field yielded well
- 8hard rules
- Things it must never do, enforced in every run
- 5handover rules
- Conditions where it stops and gives the work to a person
- 11output fields
- A structured result, not a paragraph you have to re-read
- ≤7steps per run
- Bounded work: at most 5 tool calls, enforced by the runtime
Read-only by design. This agent has no path to sending, spending, publishing or committing anything. Where that limit is the product, removing it would remove the reason to trust the output.
Overview
Every grower knows which field yielded best. Almost none can say which field made money, because yield is recorded per field and cost is recorded per farm. Inputs are bought in bulk, applied by tank mix across several blocks, and booked to one account. Machinery and labour are annual costs nobody splits. The enterprise account says the farm made a margin, and inside that average some fields are carrying the rest.
When the calculation is finally done the result is consistent and uncomfortable: a few fields lose money in almost every year and are farmed anyway. Not from stubbornness — nobody has seen the number. They are usually the awkward ones: small, wet, far from the yard, irregular enough that every pass costs more and yields less.
The distinction that makes this usable is between a field that lost money this year and a field that loses money every year. The first is weather and is not a decision. The second is a land-use decision that has been made by default, every season, for years.
It also finds inputs with no measurable return — a product applied across the farm where the fields that got more did not yield more. Precision agriculture sells prescriptions; almost nobody checks afterwards whether the spend showed up in the harvest.
It recommends no chemical, rate or treatment, and makes no agronomic decision.
Benefits
You find the fields carrying the farm
And the ones being carried, which is the useful half.
Land-use decisions made deliberately
Rather than by default, every season.
Input spend tested against the harvest
Which is the only test that matters.
What it does
Margin per field, not yield per field
Yield is recorded per field and cost per farm. The whole problem lives in that mismatch, and the enterprise account hides it in an average.
Separates a bad year from a bad field
One is weather and is not a decision. The other is a land-use decision made by default every season for years.
Allocates shared costs honestly
A tank mix across four blocks and a machine that runs all season. It states the allocation basis rather than hiding it.
Finds inputs with no measurable return
Where fields that received more did not yield more. Prescriptions get sold; nobody checks the harvest afterwards.
Counts the cost of awkwardness
Small, wet, far from the yard. Every pass costs more, and no per-hectare average shows it.
Makes no agronomic recommendation
It never suggests a chemical, a rate or a treatment. It reports what the money did.
What this changes
What this changes about your week
- It takes over
- Building a gross margin per field instead of per farm.
- Done today by
- Nobody. The enterprise account reports the farm and stops there.
- How often
- Once a year at best, and usually never.
- Typical manual effort
- Inputs are bought in bulk and applied by tank mix across blocks; nothing allocates them back.
Why Agriculture & Food Production in particular. Yield is recorded per field and cost per farm, so a few fields lose money in almost every year and are farmed anyway — not from stubbornness, but because nobody has ever seen the number.
Runs unattended
Started by you or by an event, and it finishes on its own. Nothing waits for someone to be at a desk.
The same standard every time
The two-hundredth item is held to the bar the first one was. Consistency is the part people cannot sustain.
It cannot act on its own
Field Margin Analyst has no path to sending, spending or committing. That limit is why its output is safe to act on.
How it runs
This agent runs server-side through the PROMIVO runtime. Each run is logged step by step and every tool call is permission-checked before it executes.
- 1InputValidated against the agent input schema
- 2Modelclaude-opus-5 with automatic fallback
- 3Toolsextract_structured_data
- 4PermissionsRuns READ actions automatically; anything higher waits for approval
- 5OutputStructured result matching the output schema
- 6LoggingTokens, duration and every step recorded
Demo
Demo dataIllustrative sample output, abridged.
Input
{
"fields": [],
"seasons": [
"2023",
"2024",
"2025",
"2026"
],
"areaUnit": "hectare",
"currency": "USD",
"allocationBasis": "area"
}Output
{
"escalate": true,
"carriedBy": [
"Mill Bottom and Fox Covert have lost money in all four recorded seasons. The farm made a margin every year, so nothing ever raised it."
],
"disclaimer": "An analysis of your own records with the allocation basis stated. No agronomic recommendation of any kind is made, no chemical, rate or treatment is suggested, no advice is given on regulation or land use, and results marked as associations are not trial results.",
"couldNotCost": [
"Two fields have no operation records, so only input margin is reported for them."
],
"fieldMargins": [
{
"crop": "Winter wheat",
"field": "Mill Bottom",
"season": "2026",
"inputCost": 610,
"operationCost": 445,
"classification": "structural-loss",
"lossMakingSeasons": 4,
"marginPerUnitArea": -184,
"versusFarmAverage": -502
},
{
"crop": "Winter wheat",
"field": "Long Acre",
"season": "2026",
"inputCost": 598,
"operationCost": 296,
"classification": "seasonal-loss",
"lossMakingSeasons": 1,
"marginPerUnitArea": -41,
"versusFarmAverage": -359
}
],
"seasonsAnalysed": 4,
"unallocatedCost": 14200,
"escalationReason": "Two fields have lost money in all four recorded seasons, and a significant input shows no visible yield association across fields in the same crop and season.",
"allocationBasisUsed": "Treated area for inputs; recorded machine hours for operations. Both stated on every figure below.",
"operationCostFindings": [
"Mill Bottom's input cost is normal. Its operation cost is 50% above the farm average — 4 hectares, irregular shape, 6km from the yard. Every pass costs more and there is less to harvest at the end of it."
],
"inputsWithNoVisibleReturn": [
"A foliar product applied at 1.5x rate on eight fields and at base rate on eleven, same crop and season. No yield difference is visible between the two groups in these records. That is an association in your own data, not a trial, and it is worth a proper strip test before next season's order."
]
}Requirements
Integrations
No integrations required.
Before you start
- Fields with area and crop by season
- Input purchases and applications, with which fields received them
- Machinery and labour operations by field, where recorded
- Yield and sale price per field or per crop
- Requires the All-Access plan or higher
Use cases
After harvest
Margin by field while the season's records are fresh.
Before committing next season's inputs
Which fields have earned the spend.
Rent and tenancy decisions
What a block actually returns before renewing on it.
Diversification or set-aside
Which land is a candidate, on evidence rather than instinct.
Pricing
All-Access
Billed monthly through your PROMIVO subscription. Cancel at any time.
Runs consume your plan allowance for agent executions and tokens. See plan limits
FAQ
Does it recommend chemicals or rates?
Never. It makes no agronomic recommendation of any kind. Application decisions carry legal, safety and environmental consequences and belong to a qualified agronomist.
How does it split shared costs?
By the basis you choose — area, hours, or applied volume — and it states which was used on every figure. A margin whose allocation basis is hidden is not a margin.
How many seasons does it need?
One gives you margin for that year. The valuable finding — a field that loses money every year rather than this year — needs three or more, and it says which conclusions your history can support.
Reviews
Reviews open once customers have run this agent.
Need this agent to work differently?
Tell us what to change and our team will scope a customised version for your business.
Customize this agent