Research and redesign of the Danish Tax Agency’s preliminary income assessment

Have you ever found it difficult to fill out your preliminary income assessment? Only 4%of Danish taxpayers get it right.

As a mentee during a Bootcamp, I took on the task to rethink the online assessment form to eliminate barriers to a correct assessment.


A dreaded bill or a happy surprise?

Every year, the Danish Tax Agency ‘Skattestyrelsen’generates about 4,6 millionpreliminary income assessments, based on200 milliondatacollectionsfrom mainlyemployers, banks,andpension companies.

Even with all this data, only 4% of Danish taxpayers ends up without residual or excesstax. Skattestyrelsenadministrate thecollectionand payoutof theoutstanding amountsto the remaining 96%.

This is expensive for both Skattestyrelsen and its taxpayers. Especially young studentsfind it difficult to pay residual tax.


Decrease bill sizesand increase happy surprises

My goal was to design a solution that, if realized, would increase the number of tax-payers without residual or excess taxto15%, while decreasing the average outstandingamountby80%,allwithin 5 years.

Meanwhile, my personal goal was to explore techniques tounderstand the problemand to ideate on user insights, while delivering on a tight deadline.


As diverse as Danes can be

This project had very diverse users, as it had to cover the needs of all the taxpayers in Denmark. But common for them all was, that they want an accurate assessment.

Other key users are the employees at Skattestyrelsen, that provide customer service, manages the form, and processes the entered date.

Also accounting firms and accounting advisors, who support taxpayers with tax reporting, use this form.

My role

A one-man army

As this was a personal project during my mentorship, I worked as a one-man army, doing planning, research, design and prototyping. However, I continuously got feedback from my mentor during the hole project.

Scope & constraints

With only one week to complete the project, slight knowledge about the subject and limited access to customer service, I had to come up with a detailed plan for each day.


One man, seven days

With only one week to complete the project, I decided to structure it as a design sprint, adapted for a single person.

Before the sprint started, I did an online survey to understand the use and pain points of the current assessment. The results indicated, that users did not fully understand their assessment form, and that one out of six overestimates to avoid paying residual tax. However, overestimating might have the opposite effect.

(Overestimation will intuitively increase your tax rate, but might also increase your tax credits, effectively decreasing your tax payment – the opposite of what they are trying to do)

In general, I think it can be difficult to fill in the advance statement correctly, and I am often unsure whether I have done it correctly …

I always spend a lot of time getting the advance statement completed, even longer than you would like to spend, as it’s difficult to understand. But I always complete with what I expect to earn so I’m not withdrawn too much or too little in taxes.

Survey respondent

I started the first sprint day by defining the goals, from both the Tax Agency and the taxpayers’ perspective. In this project, both parties had overlapping goals: to have an accurate assessment.

How would I be able to find a solution when I couldn’t even fully understand the preliminary statement myself? Would I be able to find the solution within 7 days? These were my identified risks.

Subsequently, I mapped the users’ current flow, which also helped me identify the underlaying problems.

Explore solutions

To get a better knowledge about the assessment form, I contacted customer service, however, their long response times meant that I couldn’t get any answers in time.

I spent my time reading their help pages instead, but even those were not fully understandable. I had to complete the project with just the knowledge I had.

Subsequently, I explored solutions with a How-Might-We exercise. The most realistic ones were chosen as the starting point for the rest of the project.

Sketching ideas

The third day went by finding inspiration from places like Dribbble, Behance and Pinterest. I searched for all kinds of online forms to understand how content could be structured and navigated.

With the inspiration fresh in memory, I sketched eight solutions. The worst ones were then discarded and I ended up with a handful of ideas to work with.

The current form required the user to sum up information from different sources in one field, which meant that calculations had to be done by the user, and not by the system. I wanted to break the form questions into smaller pieces which could be easily understood and answered without any calculations.


To gain a better understanding of what information is being asked in the preliminary income assessment, I listed all the questions in the form.

I found that I could easy the filling process by grouping the questions based on where the information is found (e.g. group all information needed from the pay check). In this way users would only have to look at one document at a time, instead of switching between documents.

In order to quickly create a low fidelity prototype with interactive form fields, I decided to use Excel. This enabled me to test how users would understand the new questions and what to enter in the different fields.

The prototype was tested with single user in a moderated in-person usability test, using the users own pay check (agreed with the user beforehand).


Because the assessment form deals with sensitive data, I had to make a fake paycheck to use in my next test.

I wanted to compare the user experience of the new solution with their experience of the current form, to better understand what was good and bad about the solution. Thus, I made a quick prototype of the current flow and updated my prototype of the new solution with a more high-fidelity design in Sketch, to match the fidelity level.

This prototype was also only tested on one user, but this time in a moderated remote usability test. I wanted to test with more users, but I was not able to recruit more.


“YES! Can you please make it a reality”?

The feedback from my two test participants was very positive. However, not all paychecks provide the same information, use the same wording nor is laid out the same way. This makes it difficult for users with different paychecks to find the information they are looking for.

I also found, that some people will not bother filling in the assessment, no matter how easy it is, as they expect the pre-filled values to be correct.

Both the paycheck and the text on the preliminary income assessment could be written in an easier understandable language.

Some of it was easy, but I can’t always find the information on my paycheck

Test participant #1

.. the numbers are already filled in. Why should I go in and change them? I expect them to be correct

Test participant #1

It should be written for stupid people

Test participant #2

The different background colors were confusing for the users, and even though blue was meant to be the primary cards, the white cards were more prominent to the users.

I have later changed all the cards to have the same white background, relying on the order of the cards to make the important cards more noticeable.

It should be easier to understand that employers are clickable. A text explaining what it will do when clicking on it would be a good idea.

Next steps

I would like to iterate on the solution and solve the problems my test participants faced.

Furthermore, I want to have a mini-version live, where people can enter their salary information and get the values to put in to their real preliminary income assessment. Thus, helping Danes fill out their assessment form accurately.


Limits are hard

I need to limit myself more. I want to do too many things, but end up making a lot of half-finished material. I need to focus on what is important and avoid losing feeling of time while designing.