Intuitive data visualisation for mobile fish farm monitoring
About the project: Bringing clarity to aquaculture data
Fish farmers often work in environments where desktop computers aren't practical, making it harder to access important data. Data is essential for monitoring fish welfare, optimising feeding, and ensuring environmental sustainability.
Clarify, a data collection platform, simplifies how industries gather and analyse information. In aquaculture, where they already serve multiple customers, they saw an opportunity to improve data visualisation—specifically, through mobile solutions like widgets.
This project focused on designing intuitive data visualisation mobile widgets for fish farmers.
My role
Designer and researcher
Team
Amanda Limstrand
Carina Jagtøyen
Daniela Fernandez
Renate Bakkeslett Hagen
Grade
A
Untangling the data challenge
Clarify’s platform primarily visualises data through time-series line graphs, which work well for trend analysis but become overwhelming when aggregating multiple data sources. While their desktop solution effectively supports in-depth analysis, it isn’t practical for fish farmers who spend most of their time in the field.
My role
As part of a four-person design team in the Master’s program in Interaction Design at NTNU, I collaborated on research, ideation, and design execution. Our team worked closely with Clarify, industry experts, and potential users.
Swimming in unknown waters
Despite Norway’s dominance in seafood exports, we had minimal industry knowledge at the outset. Without pre-existing insights, we conducted preliminary research consisting of meetings with the client, talks with industry experts, and desktop research. Our goal was to quickly identify hidden gaps in our understanding and turn them into clear, known challenges to address.
What we learned early on
Clarify’s platform nails it when it comes to consolidating automatic sensor data. However, the fish farming industry is still underdeveloped when it comes to implementing sensors. Manual monitoring and estimations remain the norm. This was a big surprise, considering that Norway produces the majority of the world's farmed fish.
📐 Understanding fish welfare requires indirect measurement. Since we can’t directly assess what fish experience, we rely on indicators like growth, health, physiological function, and behavior.
🦠 Environmental impact adds complexity. Fish farms must be closely monitored not only for fish welfare but also for their impact on the surrounding ecosystem. Issues include disease transmission to wild salmon, chemical and organic waste affecting marine environments, and disturbances such as noise and land use impacting seabirds.
🌡️ Environmental conditions play a crucial role. Key factors such as oxygen levels, temperature, carbon dioxide, and other metabolites determine whether the habitat meets the species’ needs.
📡 Continuous monitoring is essential. With so many variables affecting both fish welfare and the environment, farms need constant oversight to maintain balance.
🍔 Feed efficiency is a major performance metric. The feed conversion ratio (FCR) measures how efficiently fish convert feed into growth. A lower FCR means better feed utilization and reduced costs.
🤖 Automation has limitations. While automatic sensors provide valuable data, they are costly and not yet advanced enough to monitor all critical factors, meaning farms still rely heavily on manual monitoring.
Muscle over machine
A key question emerged from our findings:
How can we design a widget-based monitoring system that remains practical and valuable in the field, even when relying on static, non-real-time data instead of sensor-based inputs?
From concept to reality in design and ideation
Sketch, test, repeat: The lo-fi feedback loop
Understanding the complexities of fish farming, we focused on learning quickly. Rather than overanalysing, we used rapid prototyping to explore what data to present and how to present it effectively.
Since access to the client’s customers was limited, we connected with a few potential end-users outside their network, relying heavily on one experienced operations technician for insights.
Through multiple rounds of lo-fi sketching and feedback, we gradually refined our approach.
First ideation: finding what mattered most
Our desk research and early interviews helped identify key data points, giving us a solid starting point. But understanding what was important in theory didn’t guarantee it would be useful in practice. Were these the metrics users actually needed? To find out, we had to put ideas to the test quickly.
The initial sketches we tested with an operations technician.
Key insights from early prototyping:
Users should be able to customize the data they see based on their role, as they often switch between tasks like feeding fish and inspecting facilities. Having the flexibility to view relevant data at any given time improves efficiency.
The ability to input standard values for each facility is essential for reference and comparison.
Operations technicians perform multiple scheduled registrations daily, making these figures the most relevant for tracking trends.
Quick access to environmental data, historical records, and biomass is essential for daily decision-making.
An app should provide key features such as environmental data, a fish cage overview, and details on fish count, size, and biomass.
Following the interview with the operations technician, we refined the initial drafts and developed the first environmental data widgets. Since he worked at a sea-based facility where all fish pens were connected to the same sensors, there was no need to switch between pens when reviewing environmental data.
Given the importance of historical information in assessing facility performance, we experimented with different graph and table styles to present these data sets effectively. This first iteration focused on testing how well the information was visualised, evaluating the hierarchy of elements, and determining the overall usefulness of the widget.
After reviewing the first iteration with the operations technician, we realised that the reliance on manual data entry in many facilities made it essential to include time stamps on the widgets to indicate the last update. While environmental data is nearly real-time, other datasets, such as feeding amounts, are manually recorded and updated at set intervals.
Another key insight was the importance of trend indicators. Introducing symbols like arrows pointing up, down, or steady would help users quickly interpret data trends at a glance.
First iteration of sketches with implemented changes.
Sketches with trend indicators and time stamps implemented.
During a later user test with the operations technician, their manager also participated, providing a more systematic perspective. Their discussion offered valuable insights:
Oxygen and temperature are equally important for fish welfare. They preferred displaying oxygen in both percentage and millilitres and valued access to oxygen and temperature history from the past few hours.
Density is the most critical biological measurement, as regulations limit it to 25 kg per cubic metre. Including feeding data in a widget was also seen as useful.
Real-time updates aren’t necessary—updates every 30 minutes to an hour are sufficient.
Based on these insights, we consolidated critical environmental data into a single widget and created two additional widgets for biomass and feeding. We also incorporated time stamps to show the latest data updates and experimented with different visualization methods.
A key focus was balancing situational awareness with deeper data analysis. The widget needed to provide quick insights while allowing users to access more detailed data when necessary. Finding this balance was crucial to making the tool practical and effective.
Iteration updated with removal of alerts, prioritisation of fish density, and refinements to environmental data display
Between the previous iteration and this one, a major update was removing alerts, as interviews revealed they lacked value without real-time data. Since most data is manually registered elsewhere, users found alerts unnecessary.
Additionally, we removed mortality data and prioritised fish density, which the operations manager identified as a critical metric.
Other refinements included:
Splitting environmental data into separate widgets, focusing on oxygen and temperature.
Displaying oxygen levels in both milliliters and percentage for better clarity.
Adding a progress bar to the density dataset to improve usability.
A surprise: Same industry, different needs
Late in the process, we gained access to two industry professionals—a water quality specialist and an operational technician—from a land-based aquaculture company.
Both had extensive industry experience and regularly used the Clarify application in their daily work. Their insights highlighted key differences in data needs between land- and sea-based farms, reinforcing the importance of adaptable solutions.
Key findings from land-based farms:
Tank-specific measurements matter more than total locality data since different fish sizes are harvested at different times.
Density, average weight, and fish count are essential—biomass is less relevant.
For feeders, a quick overview of recent feeding activity, mortality rates, and tank temperature is useful.
Mortality and average weight should be included in a Level 1 widget.
Specific Feeding Rate (SFR) is more relevant than the Feeding Factor (FCR).
Recent data is most valuable. The last six hours should be prioritised in widgets, with more detailed history available in the app.
Batch numbers should be displayed for better tracking.
Customisable tank order would improve workflow efficiency, allowing users to swipe through tanks in their preferred order.
Although we connected with these professionals late in the process, their feedback validated many of our earlier findings and provided crucial insights into how land-based farms require a different approach to data visualisation than sea-based operations. This reinforced the need for flexible, user-driven solutions that can adapt to varying aquaculture environments.
Refining the widgets
Another round of sketches where also land-based facilities were taken into account.
After incorporating key takeaways from our late-stage interviews with land-based aquaculture professionals, we made significant changes in iteration five to better align the widgets with their needs. This phase focused on shifting priorities, refining data visualization, and improving usability based on real-world feedback.
Our refinements included:
Customised the biology data widget for land-based aquaculture, adding tank and batch numbers for better tracking.
Shifted focus from biomass to density and mortality, replacing biomass and density with mortality and average weight in the Level 1 biology widget.
Added recent mortality history and a trend indicator to help users identify patterns more easily.
Replaced Feeding Conversion Ratio (FCR) with Specific Feeding Rate (SFR) and introduced a trend indicator for better decision-making.
Prioritised temperature as the main environmental metric, removing oxygen data from this iteration.
Bringing it all together: The final designs
Insights that shaped the final prototypes
For the last phase of the project, we designed a Dashboard page—a centralised hub for all widgets, inspired by weather apps. Users could swipe through different fish pens, similar to navigating locations in weather applications.
We were initially tasked with designing a single page of the app, but we identified additional functionalities essential for a well-functioning solution:
Customisable widgets – Users should be able to add and remove widgets as needed. We also suggest a set of recommended widgets tailored to specific roles.
Locality-specific differentiation – The system should distinguish between land-based and sea-based facilities, determining which widgets are available. For example, sea-based farms don’t require temperature readings for each pen, while land-based farms don’t need underwater current monitoring.
Scalability for different facility sizes – Users must be able to add or remove tanks as needed, ensuring suitability for both large and small facilities. A search function would also be helpful for quickly locating specific tanks, especially in larger facilities with many fish pens.
Seamless locality switching – Users monitoring multiple sites should have an easy way to switch between localities.
Sketches of the dashboard.
From our research, we identified critical insights that shaped the final design:
Essential datasets – The most important data to include in a widget are environmental metrics like temperature and oxygen, along with biomass density and feeding amounts.
Historical data – A time span of 6–12 hours is sufficient for situational awareness. If users need to review older data, they are likely to use another platform. A shorter time frame helps them spot small changes when starting their workday.
Facility-based differences – In land-based facilities, users must be able to switch between fish pens in all datasets, as each pen has different sensors. This feature is unnecessary for sea-based facilities, where all pens share the same sensor. The app should reflect these differences by displaying tailored widget versions for each facility type.
Simplicity and usability – Widgets should be clear and free from unnecessary details, allowing users to quickly access key information. A major focus of testing was determining how much data to display, how to present it, and when it should be shown.
No alerts or warnings – Initially considered useful, warnings were ultimately deemed unreliable due to potential inaccuracies in the data and occasional connection issues. If alerts are not in real-time, they lose their effectiveness.
These findings directly informed the development of the final prototypes.
Bringing it all together: The final designs
The final widgets
Biology data
Feeding data
Environmental data
Phone screen with widgets implemented.
For the high-fidelity sketches, we designed three widget concepts, each focusing on a specific data type: biological data, feeding data, and environmental data.
To accommodate different user needs, we developed each widget in three levels. The smallest level displayed only the most essential information, while the larger levels incorporated more detailed data and visualisations, including graphs. This tiered approach not only allowed for personalisation of the displayed information but also enhanced ease of learning and interpretation.
Level 1 widgets required fewer eye fixations, making them quicker to process, while levels 2 and 3 provided deeper insights for those needing more detail.
The final dashboard
Here is the final prototype of the dashboard page, which users see when clicking on a widget from their home screen. Since they personally selected these datasets, they are already familiar with them. The dashboard displays data for each tank, allowing users to swipe between tanks and datasets, similar to a weather app. A dotted line at the bottom indicates swipe functionality, while symbols on either side suggest additional features.
For readability, we selected the Inter typeface by Rasmus Andersson (2013), designed for digital screens. Its high legibility, clear distinction between similar characters (e.g., 1, l, I, O, 0), and broad language support make it well-suited for an international app.
The colour palette was chosen to ensure clarity and avoid unnecessary stress. Bright red and green were avoided to prevent unintended emotional cues, while neutral tones were used for trend indicators, as upward, downward, and steady trends do not inherently signify positive or negative outcomes.
Positive results and much more to do
The design proposals in this project cannot fully address the diverse needs of all fish farming companies, particularly given the significant differences between sea-based and land-based farms. However, the client, Clarify, was highly satisfied with the solution, recognising its potential to improve workflows and data accessibility.
Users appreciated the clear visualisations and ability to quickly access relevant data, reinforcing engagement and usability. While some users desired more customisation, the design effectively balanced simplicity with adaptability. The strong user response indicates a high likelihood of adoption and retention as sensor technology advances.
However, the full potential of widgets depends on greater industry standardisation and wider availability of real-time data in aquaculture.
Future considerations
Real scenario testing
Testing in real work environments would help verify whether the visualised information functions as intended.
Localisation
Adapting data visualisations to regional needs by incorporating different measurement units and highlighting relevant environmental factors.
Diversity
Broader testing with a more diverse group of fish farmers, including those from land-based and sea-based aquaculture, would help validate results.
Expanding to other industries
While designed for salmon farming, these widgets could benefit other fish farming sectors like cod, trout, and herring. Beyond aquaculture, they could be adapted for industries requiring remote data access by leveraging the same design principles.
Accessibility
Ensuring the app’s visualisations are accessible to fish farmers with varying levels of technological literacy and vision capabilities. Some graphs relied too heavily on colour differentiation, posing potential challenges.