ForHosting KIT · Developer Utilities

Q-code translator

QTH means station location and QSL means acknowledging receipt: paste ham radio Q-codes to read their meaning, or type a phrase such as low power to get QRP. Unknown codes are flagged, never invented. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Text
QTH QSL
Calculation mode
Expand
You get
Known count
2
Unknown count
0
Catalog size
49

Q-codes are the short three-letter radio abbreviations that let operators ask and answer common questions without long plain-language sentences on crowded HF, VHF, and CW nets. New licensees memorise QTH for location, QSL for confirmation, QRM for man-made interference, and QRP for low power, then still blank on rarer forms during a pile-up or exam review. This Q-code translator expands those abbreviations into readable English glosses and compresses everyday meaning phrases back into the matching code, with an auto mode that detects which direction you need. Unknown codes are listed as unknown instead of invented, so study tools and logging helpers stay honest.

Expand Q-codes to plain English meanings

Set mode to expand (or leave mode on auto when every token already looks like a three-letter Q-code) and put one or more abbreviations in the required text field. Tokens may be separated by spaces, commas, slashes, pipes, or newlines, so a log fragment such as QTH, QSL, QRM expands in a single call. Matching is case-insensitive and ignores trailing punctuation often copied from QSO notes, so qth?

and QTH both resolve to the station-location gloss. Each known code returns a row with the canonical uppercase code, a short English meaning that collapses the traditional question and answer forms into one line, and known set to true. Codes that are not in the built-in amateur and maritime-style catalog return known false with the original query preserved and without a fabricated meaning—exactly what exam trainers and log cleaners need when a mistyped QXZ should not silently become a real abbreviation.

Compress meanings to Q-codes and use auto mode

Set mode to compress when you have a phrase such as station location, low power, man-made interference, or acknowledge receipt and want the matching Q-code. The compressor first checks curated keyword hints ordered from longer, more specific phrases to shorter ones, so qsl card and acknowledge receipt both land on QSL while location alone maps to QTH.

If no hint fires, the engine scores content words of length four or more against the canonical meaning strings and requires a solid match before claiming a hit, which keeps single vague words from inventing false positives. Unmatched phrases are returned with known false rather than a random nearest code. Multi-line or semicolon-separated compress input is split into separate items so a study sheet of several definitions can be coded in one request.

Where a Q-code translator earns its keep

Amateur radio clubs and license-prep sites use a Q-code translator so candidates can drill QTH, QSL, QRZ, and QSY without flipping a printed chart during practice exams. Logging and contest tools expand codes embedded in free-text remarks so operators see station location next to QTH without leaving the editor. Help-desk bots for radio software can compress a user’s plain-language complaint—something like my signals are fading—into QSB for structured tickets.

Keep requests under the documented text length cap, prefer expand for bulk code lists and compress for prose, and you get reproducible radio study and log enrichment without standing up your own glossary service.

License exam and club drills

Candidates expand QTH, QSL, QRM, and QRP lists during practice sessions and compress textbook definitions back to codes, with unknown tokens flagged instead of guessed.

Log and remark enrichment

Contest and daily logging software expands free-text Q-codes in QSO notes so operators see plain-English location and confirmation glosses beside the abbreviations.

Support tickets and study bots

Chatbots compress plain-language radio complaints into structured Q-codes for routing, and study bots report unknown codes when a student mistypes an abbreviation.

What does this Q-code translator do?

It expands amateur-radio Q-codes such as QTH and QSL into English meanings, or compresses meaning phrases back into codes. Auto mode picks the direction from the input shape.

What happens if I enter an unknown code?

The item is returned with known set to false and without a meaning.

How do expand, compress, and auto differ?

Expand maps codes to meanings. Compress maps phrases to codes via keyword hints and meaning word scores. Auto expands when every token looks like a Qxx code; otherwise it compresses the whole text.

Which Q-codes does the translator know?

It has a built-in catalog of 49 amateur and maritime-style codes, including QTH, QSL, QRM, QRP, QRZ and QSY. Anything outside that list is shown as unknown rather than given a made-up meaning.

Can I expand several Q-codes at once?

Yes. Separate them with spaces, commas, slashes, pipes or new lines, so a log line such as QTH, QSL, QRM is expanded in one go. Case does not matter, and a trailing question mark, as in qth?, is ignored.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/enc/q-code

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/enc/q-code \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"QTH QSL"}'
{
  "text": "QTH QSL"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.q_code",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

The free browser path and the prepaid API share the same pure module at $0.002 per successful item.

Expand Q-codes to plain English meanings

The response also includes known_count, unknown_count, the resolved mode, the echoed text, and catalog_size so clients can show coverage without hard-coding the dictionary length. Field aliases input, value, s, codes, and query are accepted for text; direction, op, and action may stand in for mode.

Compress meanings to Q-codes and use auto mode

Invalid mode strings, missing text, empty text, and non-string text fail with invalid_input and are not billed on the prepaid path.

Where a Q-code translator earns its keep

Automation scripts pin known_count and catalog_size in tests so dictionary updates become deliberate reviews instead of silent drift. Pair this endpoint with Morse or NATO phonetic tools when you also need on-air spelling practice, but keep Q-code expand and compress on its own landing page so search intent stays single-purpose. Every successful call costs the published $0.002 base price with no model tokens and no outbound network; failed validation does not consume balance.

Which Q-codes are supported?

A fixed catalog of common ham and maritime-style codes (QRA through QUF family forms used on the air and in study guides). catalog_size in the response is the exact count. Unknown codes are reported with known false.

What does the Q-code translator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →