It isn't a true "first in, first out" routing based on idle time. It looks at idle time since last handled ACD interaction. We had a similar inquiry to Customer Care earlier this year and received this info:
Please note that in all three evaluation method, agents with the longest time (in milliseconds) since the last-handled ACD interaction have highest priority. Status changes and on-queue behavior do not affect agent priority. If an agent is assigned to multiple queues, Genesys Cloud considers all of the agent's queues to calculate the time since their last interaction. This is not restricted to the queue that is under evaluation; that is, if an agent interacted in a different queue previously, the time since that interaction is considered.
This is also posted in this article - https://help.mypurecloud.com/articles/acd-evaluation-routing-methods/
Example:
Agent A has received an interaction for today and disconnected it, so their availability timer is set to zero.
30 minutes later, Agent B (last interaction was yesterday) logs in and goes on queue.
Agent A = idle for 30 minutes
Agent B = idle for 1 minute
If the feature '"Routing Includes Agent Presence' is enabled, Agent A will receive the interaction since he's the longest idle/available.
If the feature is turn off, Agent B will receive the interaction regardless if he's idle for 1 minute because his last interaction was yesterday.
The "Routing Includes Agent Presence" setting in Genesys Cloud, which controls whether interactions are routed based on agent availability, was released as a feature on December 7, 2022.
------------------------------
Whitney
------------------------------
Original Message:
Sent: 05-06-2025 16:52
From: Jason Tran
Subject: Call in queue going to the agent with the lower idle time instead of the one waiting in queue longer
There reports of agents with lower idle time getting calls before agent that has been waiting longer in queue. The calls do not have skills or agent scored adjusted to them when sent to queue. The only routing the queue is using is the "All Skills Matching" routing but there no skills assigned to these calls. Has anyone reported something similar happening. They reported this happening 3 weeks ago.
Before call was made to the queue:

After a test call was sent to queue. It alerted the agent with the lower idle time:

#Routing(ACD/IVR)