Configuring Client Timeout

The Dynamics NAV Support team have been asked many times about how to configure NAV client timeout values so we have written this post as a simple overview for this topic.

Dynamics NAV Windows client timeout configuration is managed at the NAV Server level by setting the Idle Client Timeout setting to a value that specifies how long you want a client session to remain idle before it is ended by the timeout mechanism. For example, you can configure the Dynamics NAV Windows client to time out after 10 minutes of being in an idle state by specifying a value of „00:10:00“ for this parameter (format is HH:MM:SS) as shown below:

There are some other advanced settings involved in this mechanism which you can read about here. However, to configure the client timeout interval it is sufficient to set the Idle Client Timeout setting as described above.

With cumulative update 8 for Dynamics NAV 2016, released in June 2016, a new server configuration option called „Keep Alive Interval“ was introduced. This setting allows you to configure the time interval between „pulse signals“ automatically sent by all client sessions to the NAV Service in order to prevent the client session from going into an idle state. For example, in the screenshot above you can see that the „Keep Alive Interval“ (immediately below the red box) has been set to 12 minutes. Note that because this value is higher than the „Idle Client Timeout“ setting it will ensure that truly idle client sessions will actually time out after 10 minutes.

If the above „Keep Alive Interval“ above were reduced to less than 10 minutes (e.g. „00:08:00“) then no NAV client session would ever timeout because they would have been configured to send a keep alive pulse to the server every 8 minutes so would never qualify for the 10 minutes „Idle Client Timeout“ as configured above.

To configure the timeout for the Dynamics NAV Web client, it is sufficient to configure the SessionTimeout setting to the required value in the web.config file which is typically located in c:\inetpub\wwwroot\

Comments (13)

  1. AntonioCHK says:

    What if I need just 2 o 3 sessions to have a different idle timeout.
    I mean: its ok for 90% of my users to be dropped after a 10 minute idle time, but there a some other sessions I wish to keep always alive. Is this possible?

    1. Henrik says:

      Yes this feature must be based on the individual user not one or nothing. The general users I would typical setup to 10min idel and out but we have setup some specific users on specific PC/Hardware eksampel in Warehouse/production where its not smart to have to login!

      1. anfinnur says:

        Either this does not make sence.
        Or I am missing something here.

        The new feature in 2016 CU08:
        1. In the server configuration file, set Idle Client Timeout to 00:10:00
        2. In the server configuration file, set Keep Alive Interval to a value larger than 00:10:00
        ?both parameters in the server configuration file?

        To us it is like stating “No car is allowed to drive faster than 50 KM/H” AND ALSO stating “All cars are allowed to drive 80 KM/H”.
        Just to make it clear: do I still state the KeepAliveInterval in user’s ClientUserSettings?

        1. @anfinnur
          I can see how this can seem confusing (having both server side), and indeed this wasn’t original design. As of CU 08 we moved the keepalive interval from client side to server side – after feedback that modifying those client settings on all individual client machines could be cumbersome and demanding. So in short – no, you don’t need the client side one

    2. Armondz says:

      Any update?

      So there is no way to set different timeout for different users any more?

  2. Chris Potter says:

    Thanks for sharing this. I had not realised there was a timeout feature and now I can better advise my customers.
    Chris Potter

  3. Henning says:

    In NAV 2016 server I have the Idle Client Timeout set to 00:10:00 and the Reconnect Period set to 00:02:00
    Still both idle NAV client users and idle Web client users stay connected forever (still visible on the “Sessions” page when updated)
    Where can I find the Keep Alive Interval setting and Session Timeout setting?

    1. @Henning: If you are running on a NAV 2016 build earlier then CU 8, your clientkeepalive settings will still be located Client side, in ClientUserSettings.config

      1. Ahmad says:


        It is not working also in NAV 2016 Update 11 Build NAV.9.0.46773.W1

  4. Ahmad says:


    It is not working !!!!!!!!!!!!
    I have set Idel Client Timeout = 00:15:00 & Keep Alive Interval = 00:16:00
    Version is NAV 2016 Update 11 Bulid NAV.9.0.46773.W1

    Please advice

  5. Ales Jeglic says:

    Because of intereference of Keep Alive packets sent at regular interval with Idle Timeout counter the average
    achieved Idle Timeout is “Idle Client Timeout” + “Idle Client Timeout” / 2
    The average achived Idle Client Timeout is nearer to specified when we prolong Keep Alive Interval e.g twice of Idle Client Timeout or more.

    1. Oscar says:

      We have NAV 2017 CU 9 and the system kicks out users in a correct way. The problem is that when a session times out the users get an error message that the connection has been lost. Do you want to reconnect? The users clicks yes and the system returns “The session could not be retrieved from the server. The application will close.”. Is there any configuration missing?

  6. Marcus says:

    I can’t seem to get this to work, even though I’m following the instructions to a tee. I have set the “Client Idle Timeout” to 10 minutes (00:10:00) and added the “ClientServicesKeepAliveInterval key” to the ClientUserSettings.config, as it was not there.

    I’ve tried setting the “ClientServicesKeepAliveInterval key” to l low and high values, meaning below and above 10 minutes. The reason I set it below 10 minutes is that the name indicates that the value is an interval, meaning that the client would perform an action every x minutes to keep the client alive. Not that it would keep the client alive for x minutes. Something to think about Microsoft….

    I’ve tried specifying the value in different ways (seconds, 00:09:00, MaxValue), but none of them seem to work.

    For more information and to possibly help me out, see this post:

Skip to main content