Cedi volatility: how a 20% margin became a loss
I sat in the finance seat when a fixed-price contract turned bad. Bad to the extent the business nearly became insolvent. The specification was right, the supplier was reliable, the paperwork was clean. Nobody made a mistake.
The rate went against us by the day, while we hoped. But hope was not a strategy.
What happened to a GH₵1,000,000 fixed-price cedi contract.
A contract I could have signed myself.
A GH₵1,000,000 supply deal, agreed in December 2025 at a 20% margin. The cost base is GH₵800,000 of imported goods.
The important thing about that deal is that it has two prices in two currencies. What the customer pays is fixed in cedis. What the supplier is paid is fixed in dollars. In December, GH₵800,000 bought the $76,555 I needed, and the two sides lined up.
Nothing about the order changed. Same goods, same supplier, same specification. But between the day the order was placed, produced, shipped and finally settled, a dollar no longer cost GH₵10.45. On 45-day credit terms, this contract settled in June 2026 at 11.90.
| Line | At signing (Dec) | At settlement (Jun) |
|---|---|---|
| Contract price | GH₵1,000,000 | GH₵1,000,000 |
| Goods needed, in dollars | $76,555 | $76,555 |
| FX rate (GHS/USD) | 10.45 | 11.90 |
| What those dollars cost | GH₵800,000 | GH₵911,005 |
| Gross margin | GH₵200,000 | GH₵88,995 |
| Gross margin % | 20.00% | 8.90% |
A 20% margin settles at 8.90%. Add 10% overheads and the contract closes at a 1.10% loss.
There was no bad decision anywhere in that file. Nothing was overpaid, no supplier was misjudged, no specification changed. When a margin comes in short, the natural place to look is procurement or pricing, and neither is responsible here. The loss does not sit in a line item. It sits in the six months between the day the price was agreed and the day the money moved.
Why currency risk starts at the purchase order, not the invoice
Most finance processes start counting currency risk when the invoice arrives, even if they count at all. By then there is nothing left to count.
Put simply: the moment you quote a fixed price in cedis for goods you will have to buy in dollars, you have taken on currency risk. Not when the supplier invoices you, but when you quote. From that point you are carrying a cost you have not yet fixed, and every day the rate moves, it moves against or for a position you already hold.
Between the quote and the payment, there are production lead times, shipping and credit terms. Commonly 60 days. Frequently longer. Through all of it the position is open, and in most companies nothing measures it.
By the time the invoice arrives, the move has already happened. What looks like risk management at that point is just notification.
Three reasons watching the exchange rate more often does not help
The intuitive answer is to check the rate more often. Three things limit how much that helps.
Cedi volatility arrives in bursts, not evenly
Most months nothing happens, and then some months everything does. The median 30-day move in 2026 was 0.09%, small enough to ignore, and most months looked like that. The worst 30-day stretch was 6.50%, roughly seventy times larger, and it happened more than three times within the period.
Any alert set at a level typical months would not trigger is, by construction, set too high for the month that matters.
A 30-day window cannot measure a 90-day exposure
You measure a shorter period than you are exposed to. Watching a 30-day window while carrying a 90-day contract means most of the risk happens outside the frame.
Over 90 days, closer to a real quote-to-settlement period, the median move is 6.24%, not 0.09%. Same currency, same year. Only the window changed. That is a move large enough to erode an entire margin once operational cost is subtracted.
Dollar, euro and pound exposure move together against the cedi
Currency risks are often correlated. It is tempting to assume dollar, pound and euro exposure will offset each other, and that at least one will be going your way. Against the cedi they tend to move together instead.
On 5 August 2026, sterling and the euro hit their worst 30-day windows on the same day against a cedi pair. Counted separately, total exposure gets understated.
Why forecasting the cedi does not solve it
Forecasting will not close the gap either. The cedi moved 41% in 2025, and institutional forecasts were off by as much as 69% in the opposite direction.
The businesses that came out ahead that year were not better run than everyone else. They were lucky, and luck is not a process.
Where the cedi is heading is not an answerable question, especially in Africa with its structural challenges. But there is one next to it: how far can the rate move before this particular contract stops making money?
11.76
For the contract above, that rate is 11.76. Below it, the deal works. Above it, once overheads are counted, it does not. That number can be worked out on the day the contract is signed, from figures already sitting in the file, and it requires being right about nothing at all.
It settled at 11.90. The rate crossed the line that mattered some time before June, and nobody watched that line, because nobody had calculated it.
Work out your breakeven rate
For a contract priced in one currency with goods bought in another. Change any figure or currency; the result updates as you type.
Breakeven rate
11.7563
GHS per 1 USD · 0.085061 USD per 1 GHS
- Net margin at signing10.0%
- USD can rise before a loss12.5%
- Before the margin falls below 5.0%6.3%
If 1 USD costs more than 11.7563 GHS, this contract loses money. noeud works this out for every open order and watches it daily.
Breakeven = (contract value × (1 − overheads) − other costs) ÷ cost of the goods. Worked out in your browser: your figures are never sent or stored. Information, not advice.
What we built
noeud came out of this problem directly. We had sat on the finance side of it and could not find anything that measured a contract’s exposure from the day its price was agreed, rather than the day it was invoiced. If you buy in dollars against prices fixed in cedis, this is how noeud works for importers; if you are paid in foreign currency, see noeud for exporters.
So noeud does three things. It tracks each contract across the full window between quote and settlement, so the position is visible while there is still time to do something about it. You choose your risk appetite against which your position is tracked. It calculates that contract’s breakeven rate, so there is a specific number to watch, rather than a general sense of unease and hope. And when you decide to cover, it puts your banks in competition for the trade, instead of handing you a single quote with nothing to compare it against.
We never take custody of client funds, and pricing is visible to the basis point.
Written by Desmond Asime, Founder, CEO of noeud. Follow on LinkedIn (opens in a new tab).