Helptal — Home
HelptalHelptal
Helptal
  • Support Tickets

    Every customer email and message in one shared list.

    Live Chat

    A chat bubble for your website, with AI handling the easy ones.

    Appointment Booking

    Online booking pages with calendar sync and meeting links.

    AI Automation

    An AI teammate that drafts replies in your tone of voice.

    Knowledge Base

    Help articles on your own web address — the AI quotes them too.

    • About Helptal

      The mission and the team behind the product

    • Why Helptal

      How we compare to the older help desk tools

    • Use Cases

      How different teams use Helptal day-to-day

    • Blog

      Helpdesk benchmarks, playbooks, product news

    • Documentation

      Setup guides and developer reference

  • Pricing
  • Support
Sign inGet Started
Helptal — Home
Helptal

Menu

    • Support Tickets
    • Live Chat
    • Appointment Booking
    • AI Automation
    • Knowledge Base
    • About
    • Why Helptal
    • Use Cases
    • Blog
    • Documentation
  • Pricing
  • Support
    • Terms & Conditions
    • Privacy Policy
    • GDPR
    • Sub-processors
Sign inGet Started

9 custom field configurations that fix ticket routing at intake

by Helptal Editorial

May 23, 2026•8 min read
TicketingOperationsAutomationSaasCustomer Support
9 custom field configurations that fix ticket routing at intake

Most ticket routing failures aren't routing-engine failures. They're intake-form failures. If your form asks "What's your issue?" and accepts free text, no trigger in the world will reliably send billing tickets to the billing group. The fix is custom fields on ticket forms — required pickers, dropdowns sourced from real customer data, and conditional logic that pre-classifies the ticket the moment a customer hits submit. Here are nine configurations that do exactly that.

Key takeaways

  • Routing automations need structured signals at intake; free-text descriptions are useless to a trigger engine.
  • Required topic and required custom fields cut misrouted tickets by 30-60% (estimate) once tuned, because customers can't submit ambiguous tickets in the first place.
  • Dropdowns sourced from your SSO metadata or a live HTTP lookup eliminate the "what plan am I on?" guessing game that drives miscategorization.
  • Conditional fields (show only when topic = X) keep forms short while still capturing the specific data each ticket type needs.
  • Every required field is a tradeoff with form abandonment — five required fields is roughly the ceiling before submission rates drop noticeably.

1. Required topic with a curated list, not free text

The single highest-leverage change is making topic a required dropdown with 5-8 options that map directly to your support groups. Not 20 options. Not free text. A short list a tier-1 agent could route by reading once.

The options should match how your team actually splits work: Billing & Subscriptions, Technical Issue, Integration / API, Account & Access, Feature Request, Something Else. "Something Else" is the escape valve — without it, customers force-pick the wrong topic and you've made routing worse, not better.

In Helptal's ticket form configuration, the topic selector has three modes: Optional, Required, or Hidden. Required is the default we recommend for B2B SaaS. Topics also carry default group, priority, and assignee — so picking "Billing" routes the ticket without any trigger logic at all.

2. Customer tier dropdown sourced from SSO metadata

This is the configuration that pays for itself fastest. Instead of asking "What's your plan?" — which customers get wrong half the time — pull the value from your own system.

A LOOKUP_FROM_USER field reads from the customer's SSO metadata at sign-in. When a customer logs into your portal via SSO, you pass plan: "enterprise" (or tier: "pro", or mrr_band: "50k+") as a JWT claim. The dropdown's options come from that array. The customer can only pick a value that matches their actual account.

The routing payoff: enterprise tickets automatically inherit High priority, route to the named-account group, and trigger SLA policies. Free-plan tickets land in the standard queue. No agent triage step required.

3. Plan-aware priority defaults via topic + tier

Don't ask customers to set priority — they'll all pick Urgent. Instead, derive it from the combination of topic and tier.

The pattern: topic determines a base priority (Technical Issue = Normal, Billing = Normal, Outage = Urgent), and a trigger upgrades it based on the tier field. Enterprise + Technical Issue = High. Enterprise + Outage = Urgent. Free + Feature Request = Low.

This means your priority field is either hidden from customers entirely or shown as read-only after submission. The form sets it; humans only touch it for exceptions.

4. Order ID with format validation (e-commerce-adjacent SaaS)

If your product has order IDs, invoice numbers, or subscription IDs, capture them at intake with a text field that has a format hint and — ideally — server-side validation via a LOOKUP field.

A LOOKUP custom field calls your HTTPS endpoint at form-render time. Configure it to validate that the order ID belongs to the signed-in customer before the form submits. Now your billing agent opens a ticket and the order is already linked, the invoice already attached as context, no "can you share your order number?" round-trip required.

The time saved per billing ticket is typically 3-5 minutes (estimate) — the entire first reply.

5. Environment selector for technical tickets

For any B2B SaaS with staging environments, regional deployments, or multi-tenancy, an environment dropdown is non-negotiable.

Field typeOptionsWhen required
DropdownProduction, Staging, Development, SandboxWhen topic = Technical Issue
Dropdown (LOOKUP_FROM_USER)The customer's actual deployed regionsWhen topic = Outage or API Issue

Conditional logic keeps this from cluttering forms. Billing tickets don't ask about environment. API tickets do. The field surfaces only when relevant.

6. Reproducibility checkbox + steps textarea

For bug-report-shaped tickets, two fields together change everything: a required checkbox ("Is this reproducible?") and a required textarea ("Steps to reproduce"). Show both only when topic = Technical Issue or Bug.

The checkbox routes one-off issues to tier-1 (where they're usually user error) and reproducible issues to tier-2 or engineering escalation. Two outcomes, one field. The textarea forces the customer to commit to actual reproduction steps rather than "it broke" — and even when the steps are wrong, the act of writing them surfaces 20-30% of issues as user error before submission (estimate).

7. Integration / third-party tool dropdown

If your product integrates with Salesforce, HubSpot, Stripe, Shopify, etc., a multi-select "Which integration is affected?" field is gold for routing.

Set it as a dropdown sourced from a LOOKUP endpoint that returns the integrations the customer actually has connected — not a static list of every integration you support. A Stripe-integrated customer doesn't see Shopify as an option.

The trigger logic: if integration = Salesforce, tag the ticket integration:salesforce and route to the integrations group. Your specialists get the right tickets without playing 20 questions in the thread.

8. Urgency context (not priority) — a short dropdown

If you want customer-supplied urgency signal without giving them the priority field, add a separate "How is this affecting your work?" dropdown with three or four options: Blocked, Slowing me down, Inconvenient, Just a question.

This is a softer ask than "What priority?" and customers self-report it more honestly. Map the values to priority via trigger: Blocked + Enterprise = Urgent, Blocked + Standard = High, Just a question = Low regardless of tier.

You now have a customer-impact signal feeding routing, separate from the (hidden) priority field.

9. "Something Else" with a conditional reason field

The escape-valve option on your topic dropdown needs its own follow-up. When a customer picks "Something Else," show a required short-text field: "Briefly, what's this about?"

This field is read by your auto-tagging — whether that's a human triage queue or an AI classifier. Without it, "Something Else" tickets land in the general queue with zero signal and sit there. With it, even a basic keyword trigger can catch 40-50% of misclassified tickets and re-route them.

In workflows with AI auto-tagging, the reason field becomes the primary classification input for these tickets, and the AI typically gets the topic right on the next pass.

How Helptal fits in

Every configuration above maps to specific ticket form features in Helptal: required topic selector, custom field types (Text, Textarea, Dropdown, Date), LOOKUP_FROM_USER fields that read from SSO metadata, LOOKUP fields that hit your own HTTPS endpoint at render time, and conditional ticket forms that branch by topic. The dropdown sources, validation, and routing triggers all live in one place — no Zapier middleware, no separate form builder. If you're rebuilding your intake form, the knowledge base import tools and AI auto-tagging cover the gaps when customers still pick "Something Else."

Frequently asked questions

How many required fields can a support ticket form have before submission rates drop?

Five is the practical ceiling for B2B SaaS forms where the customer is signed in. Beyond five, abandonment climbs noticeably. The minimum useful set is three: topic, a short subject, and a description. Add tier and one context field (environment, order ID, integration) only when the topic warrants it via conditional logic.

Should priority be a customer-facing field on the ticket form?

No. Customers self-report priority inaccurately — most pick Urgent regardless of actual impact. Derive priority from topic + customer tier + an optional "How is this affecting your work?" context field, set by triggers at submission. Keep the priority field visible to agents only.

What's the difference between a LOOKUP and a LOOKUP_FROM_USER field?

LOOKUP_FROM_USER reads from the customer's SSO metadata (a static array passed when they sign in) — fast and free of network calls. LOOKUP calls your HTTPS endpoint at form-render time with the customer's identity, returning fresh data each time. Use LOOKUP_FROM_USER for things that rarely change (tier, region); use LOOKUP for things that need real-time accuracy (current order IDs, active subscriptions).

Can custom fields replace agent triage entirely?

For 60-80% of inbound tickets, yes (estimate). The remaining tickets — ambiguous, multi-topic, or "Something Else" — still need human or AI triage. The goal isn't to eliminate triage; it's to ensure the triage queue only contains tickets that genuinely need a human routing decision, not the 70% that could route themselves with better intake.

How often should the ticket form be updated?

Quarterly is a reasonable cadence. Pull your top 10 misrouted ticket patterns each quarter, identify the field that would have prevented each, and add or refine accordingly. Forms drift — products add features, plans change, integrations come online — and intake fields need to keep pace.

This week, pull the last 100 tickets that got reassigned after their first agent touch, and tag each with the field that would have prevented the reassignment if it had been required at intake. That list is your form roadmap. If you're evaluating tooling, Helptal's free plan includes custom fields, conditional ticket forms, and LOOKUP_FROM_USER dropdowns from day one.

Share this post

Start with Helptal Free, free forever

Sign up in under a minute. No credit card, no sales call. Your one-person helpdesk can be handling real customer emails before lunch.

Get Started Free
  • No credit card required

  • Free forever — upgrade any time

Decorative gradient background
Decorative gradient background
Helptal

Modern helpdesk for support teams who care.

LinkedInLinkedIn
FacebookFacebook

Products

  • Support Tickets
  • Live Chat
  • Appointment Booking
  • AI Automation
  • Knowledge Base
  • Pricing

Resources

  • About
  • Why Helptal
  • Use Cases
  • Blog
  • Documentation
  • Support

Legal

  • Terms & Conditions
  • Privacy Policy
  • GDPR
  • Sub-processors

Copyright © 2026 Evith LLC. All rights reserved.