Some Form Elements
hs-form
form-columns-1
form-columns-2
hs-form is main form class.
form-columns-1 is class of wrapper with 1 column for inputs.
form-columns-2 is class of wrapper with 2 columns for inputs.
input and label
hs-input
Field Description / Help text
hs-field-desc
This is help text for the field
Field error message
hs-error-msgs inputs-list
hs-error-msg
  • Error message label
hs-error-msgs inputs-list is an HTML list element.
hs-error-msg is a text span inside HTML List Item element.
Text area Input
hs-input hs-fieldtype-textarea
hs-fieldtype-textarea is added as combo class.
Checkboxes
hs-form-booleancheckbox
hs-form-booleancheckbox-display
inputs-list
hs-input
Note: HubSpot uses basic HTML checkboxes, Webflow checkboxes work differently than the default HTML checkboxes, hence in order to style HubSpot checkboxes you need custom CSS.
you can use Webflow checkbox to style and then copy CSS from it.
Radio Buttons
inputs-list
hs-form-radio
hs-form-radio-display
inputs-list
hs-input
Success message
submitted-message
RecaptCHA
hs-recaptcha
Submit button
hs_submit
hs-button
Oops! Something went wrong while submitting the form.
All Articles
Developalooza 2026
Developalooza 2026
•
AI
•
Development
•

Mowi: Opening a salmon operations system to AI

Mowi produces almost ten million meals of salmon a day. Together with Avo Consulting they built AquaOps, a unified digital experience that replaced Excel, paper and manual communication, and MCP is how they are now opening it to AI.

5 min read
Published on September 24, 2026
Two presenters on stage in front of a slide reading 10 m meals produced every day, equivalent to 3.5 billion per year

Developalooza 2026, Rebel, Oslo. Customer story from Eric Nordvik, Apps and AI development manager at Mowi, with Stian Bøe of Avo Consulting, who has worked with Mowi for two years.

Mowi is the largest producer of Atlantic salmon in the world, with about a fifth of the global market. It covers the whole chain, from making the feed and producing the roe through to harvesting, processing and selling the fish. The head office is in Bergen, it operates in 26 countries and employs around 12,000 people. In Norway alone it runs 180 fish farming locations, which produce 60 percent of its salmon.

Added up, that is almost ten million meals a day, or 3.5 billion a year. Eric Nordvik’s comparison was McDonald’s, at around 2.5 billion burgers a year, and his other way of putting it was that Mowi could feed the whole of Norway twice a day, all year.

One way of working across every site

The difficulty is where the work happens. Fish farms are not near cities. They sit along the coast in remote places with bad weather, and every operation has to be planned around that. Fish have to be moved, which means vessels have to be coordinated, out to the sea and back to the production plants.

Mowi has been producing salmon since the 1960s, and that coordination ran on a mix of Excel and paper, with the detail shared over Teams and SharePoint. Together with Avo Consulting they built AquaOps, a unified digital experience that gives every site the same way of working.

What AquaOps does

AquaOps is Mowi’s central operations management system, built on Appfarm with Avo Consulting. It covers vessel operations, logistics and the movement of fish, welfare including assessment and treatment, and service on boats, pens and equipment.

The vessel plan is the main view, with boats down one side and operations across the middle, filterable by region and by operation type such as treatment, sorting, smolt, harvest and service. Opening an operation gets you the detail behind it: the plan itself, a communication log, a map of the pens, a shift plan, and a safety assessment that has to be completed before any fish are moved.

Where MCP comes in

Stian Bøe’s framing was that the optimization potential with AI is huge, but only on top of controlled processes and good data. With that foundation in place, Mowi exposed AquaOps to AI through MCP, the Model Context Protocol, so the system can be queried and acted on through a chat interface.

The demo ran ChatGPT beside the vessel plan on development data, framed around a site manager who is out at a location with nothing but a phone.

First, a question: are there any requests at this site I need to follow up? It goes into the data model and comes back with two. Then an instruction: create a service operation for that request, three days, find a suitable vessel, put it in next week. It reads the vessel plan, finds the space, and creates the operation. Refresh the plan and it is there with the right data on it.

Then a voice note, recorded as if standing at the pen. He was looking from the north side, there were some algae, it otherwise looked fine. He asked for it to go into the communication log, and refreshing the operation showed the entry under his name, timestamped, almost word for word.

The last request was heavier: a report ranking vessels on sorting performance, as a top ten, which means walking a lot of objects and doing real calculation. It ran for a while and then produced a file, then a chart when he asked for something more visual, then a daily schedule when he asked for it to run at eight every morning and land in his chat.

Foundation first

Stian’s takeaways came in order. A strong data model and data people trust, because as he put it, they know their own data, so the AI knows it too. Then well defined workflows, which give the AI the structure and context to work inside. Only then MCP endpoints, which take minutes to build once the first two exist, and which is where the real value starts.

The first question afterwards was what automated process they are most looking forward to finishing. Stian’s answer was that he has started testing whether he can automate Eric’s analytics work through MCP rather than building the interfaces for it.

Stian and Eric were then asked whether all of this makes analytics investment redundant, given you can now put MCP on top of everything. The answer was that it changes rather than disappears. Eric had been building an analytics dashboard, which is where the idea for the MCP example came from. He expects plenty of cases that no longer justify pouring money into Power BI, while still wanting the visual answer at the end of it.

Stian was also realistic about trust. The chat interface is not live across the organization yet. His expectation is that people may be a little wary if the same question produces a slightly different graph on consecutive days, and that consistency will matter more than a fresh report every time.

Part of our series of recaps from Developalooza 2026. Read the rest of the series, or sign up to our newsletter so you don’t miss an invitation to next year’s edition.

More reading

There are no items matching your filters. Please try another filter to view results.

We have a lot of helpful resources. Try another filter or reset the filters to find the resource for you.

See all articles

Digital transformation without disruption

Book demo