Free tool · no sign-up

DTMF tone generator for testing an IVR menu

Generate DTMF tones with ITU-T Q.23 frequencies, play sequences with pauses and compare tone and gap length with the values in Annex A of Q.24.

Content updated:

Use 0-9, *, #, A-D. Each comma adds a 2 s pause.
Includes a 5 ms ramp at the start and end to avoid clicks.
Silence after each tone, except after the last item.
Browser output level. Start low and raise it gradually.
Keypad (plays one key with the chosen duration)

How to use it

Call an authorised test menu from another phone, switch that phone to speaker or hold its microphone close to the computer and, when the prompt accepts input, press a key on this page's keypad or the Play sequence button. If the menu responds to the key generated here but not to the phone's own key, the hypothesis to check is that device's keypad or app; if it responds to neither, the audio path may be failing or the menu may expect keys by another route.

The sound is generated in your browser with the Web Audio API. The audio context is created when you press the first button and the page makes no network requests. Avoid banks or other systems that ask for personal data: your own menu or a test menu is enough.

What it generates and at which frequencies

Each key adds two sine waves at the same level, one from the low group and one from the high group, according to Figure 1 of ITU-T Recommendation Q.23. Q.23 defines 16 signals (10 digits and 6 reserve signals) and requires each transmitted frequency to be within ±1.8% of nominal and distortion products to be at least 20 dB below. It does not fix the sending level, because that depends on each national plan.

Low group1,209 Hz1,336 Hz1,477 Hz1,633 Hz
697 Hz123A
770 Hz456B
852 Hz789C
941 Hz*0#D

The sequence duration is calculated as: total = tones × duration + gaps × gap between tones + commas × 2,000 ms. A gap is left after each tone, except after the last item. The tool also compares your settings with the values in Annex A of ITU-T Recommendation Q.24, which lists reception parameters adopted by NTT, AT&T and the Danish (used by several European administrations), Australian and Brazilian administrations.

Q.24 Annex A parameterPublished values
Minimum duration that must be recognised40 ms in all five profiles
Duration that must not be recognisedup to 20-25 ms depending on the profile
Minimum pause between signals30 to 70 ms
Signalling velocity (minimum cycle per digit)93 to 125 ms
Level difference between frequencies (twist)max. 5, 6, 9 or 10 dB; AT&T allows the high group up to 4 dB above or 8 dB below the low group
Frequency tolerance that must be accepted1.5% to 1.8%, plus 2 or 4 Hz in two profiles

Q.24 itself states that it does not supersede national standards: it is a framework of parameters, not a single mandatory value.

Worked example

Fictitious data: a test menu asks you to press 1, wait and then dial extension 2 followed by the hash key. We type 1,2#, with 150 ms tones, 150 ms gaps and 50% volume.

  • Tones: 3 × 150 = 450 ms.
  • Gaps after the 1 and after the 2: 2 × 150 = 300 ms.
  • One comma: 2,000 ms.
  • Total: 2,750 ms, that is, 2.75 s.

The 1 plays from 0 to 150 ms (697 + 1,209 Hz), the 2 from 2,300 to 2,450 ms (697 + 1,336 Hz) and the hash from 2,600 to 2,750 ms (941 + 1,477 Hz). The cycle per digit is 300 ms, above the 125 ms minimum of the strictest profile, and the 150 ms gap exceeds the 70 ms of the Australian profile. All five profiles are met.

In-band, RFC 4733 or SIP INFO

What this page produces is in-band DTMF: the tone travels as audio inside the voice. IP telephony has two other routes. RFC 4733 sends the key as an RTP event (codes 0-9, 10 for *, 11 for #, 12-15 for A-D) and warns that low-rate voice codecs cannot be guaranteed to reproduce tones accurately enough for automatic recognition. The other route is sending the key in SIP INFO messages; RFC 6086 notes that this use for DTMF spread through proprietary, non-standardised mechanisms.

If the provider expects RFC 4733 events or SIP INFO, an acoustic tone will only reach the menu if a gateway detects it in the audio and converts it. That is why a failure with this tool does not prove the menu is broken, and a success does not prove the phone's keypad sends the key correctly.

How to interpret the result and its limits

  • Compressed codecs: a low-rate voice codec can distort the tone until it is unrecognisable.
  • Mobile or softphone processing: the echo cancellation, automatic gain control and noise suppression described in the W3C Media Capture and Streams specification alter the microphone signal and can cut a steady tone.
  • Speaker and microphone: their frequency response can create a level difference between the two tones larger than the permitted twist.
  • Excessive volume: an overdriven speaker adds distortion; raise the volume gradually.
  • Tones that are too short: below 40 ms some receivers may discard them.

Before changing the signalling, follow the diagnosis of why the phone menu does not recognise keys, review the IVR menu design and, if the menu serves patients or a law firm's clients, the tests in the admissions menu for a clinic or law firm.

The values you enter are calculated in your browser and are not sent to CallsIQ. The page measures visits with Google Analytics as described in the privacy policy.

Sources and limits of this tool

The linked sources support the formula, ranges or prices the tool uses. Examples with fictional data are identified in the text.

How to report a correction