What ingroup_grade_random does for email distribution
The grade-random methods give higher-graded agents a better chance of getting the next email without ever guaranteeing they receive it.
Most Next Agent Email methods are deterministic: sort the available agents, pick the first one. The grade-random methods are the exception. ingroup_grade_random and campaign_grade_random give higher-graded agents a higher probability of getting the next email, but they never guarantee it. It is weighting, not a hard order.
Probability, not order
Grade is a value you assign to each agent. With a deterministic method like a rank sort, the top-graded agent would win every time there is a tie. The grade-random methods instead turn grade into a weight. A higher-graded agent has a better chance of being chosen, but a lower-graded agent still comes up sometimes. Over many emails the higher grades end up with more, yet the outcome of any single email stays a little unpredictable.
The two variants differ only in scope. ingroup_grade_random uses the grade set for a specific email group, while campaign_grade_random uses the grade at the campaign level. Pick the one that matches how you want grades to apply. If an agent works several email groups and you want their weighting to differ per group, use the in-group variant; if you want one grade to govern everything in the campaign, use the campaign variant.
It helps to picture the weighting as a raffle. A higher grade is like holding more tickets, so your odds of being drawn go up, but every agent in the pool still holds at least one ticket. No one is guaranteed the next draw, and no one is shut out of it either.
Why weighting helps
A purely deterministic method can starve your lower-graded agents, who then never build experience. A purely even method ignores that some agents are simply better. Grade-random sits in the middle:
- Strong agents handle more email because they are weighted up, which protects quality.
- Newer agents still get a steady trickle, so they keep practicing and stay warm.
- No single agent is locked to the front of the line, so the load varies naturally.
There is also a quieter benefit for morale. Deterministic methods can make routing feel rigged to the agents on the wrong end of the sort, since the same names always go first. A weighted draw still favors the strong agents on average, but the day-to-day mix feels less mechanical, which can matter when you are trying to keep a queue running smoothly.
flowchart TD
A["Inbound email arrives"] --> B["Available agents in group"]
B --> C["Read each agent grade"]
C --> D["Weight chances by grade"]
D --> E{"Weighted random pick"}
E -->|Often| F["Higher-graded agent"]
E -->|Sometimes| G["Lower-graded agent"]
F --> H["Assign email"]
G --> HIf you instead want experience to be a hard guarantee rather than a nudge, the user-level method always puts higher levels first. To see how it compares to even-spread options, read oldest-wait versus fewest-emails, and the inbound email and chat guide covers the whole setup.
Grade weighting is one flavor of Skills-based routing, steering work by ability rather than by clock. It reads the same Agent rank ideas you use for calls in an Ingroup, and once an Agent finishes an email they apply a Disposition and rejoin the queue. To run VICIdial inbound email on a managed box, see our pricing page.
About VICIfast LLC
VICIfast LLC operates a managed VICIdial hosting + BYOI service for outbound and inbound call centers. We run the dialers, the carriers, the recordings pipeline, and the compliance plumbing so operators don’t have to.
Citing this article
VICIfast Engineering. “What ingroup_grade_random does for email distribution”. VICIfast LLC, June 27, 2026. Retrieved from https://vicifast.com/blog/vicidial-email-grade-random-routing
Have questions?
Related posts
You might be interested in
VICIfast newsletter
Liked this? Get the next one in your inbox.
We ship the kind of stuff you just read — concrete, numbers-first, no drip. One email when a new post goes live. Unsubscribe in one click.
Comments
No comments yet — be the first.