Things I’ve learned, published for the public benefit
Hope This Helps header image

Online Tone Generator

Screenshot of the Online Tone Generator

I made an online tone generator based on the Firefox Audio API HTML5 Web Audio API. It’s basically a large logarithmic slider that allows real-time, smooth frequency changes.

Features

  • Fine-tune the frequency in 1 Hz, 0.01 Hz and 0.001 Hz increments
  • Pick a music note from a list (added Sep 2014, revamped May 2016)
  • Increase/decrease the frequency by one octave (added Aug 2015)
  • Can change the frequency smoothly as you move the slider
  • Keyboard shortcuts (added Aug 2015)
  • Generate a link to a specific tone, so you can share it (added May 2016)
  • Choose sine/square/sawtooth/triangle wave (added Aug 2017)
  • Input frequency as a number (added Aug 2017)
  • Works well on Chrome, Firefox & Safari – including mobile devices (iOS, Android) – requires a browser with support for the Web Audio API.

There are other tone generators on the Web, but they are not as cool (if I do say so myself) and/or they require Java or Flash.

What can you use a tone generator for? You can do a science experiment with resonance, tune a musical instrument, test your new audio system (how low does it go?), test the limits of your hearing (I can hear virtually nothing above 18,000 Hz, even at maximum volume), or figure out your tinnitus frequency to better target therapy.

835 Comments so far

  • Voessli

    Great tool. For tinnitus masking Id like to propose adding a pulse editor and more Sounds. To make a noise like that:
    https://www.youtube.com/watch?v=CNcTNduOojw

  • Helen Richmond

    A wonderful site, really useful. Thank you. I may have some questions soon.

  • ~Mark F

    Hello,

    You have a very nice tone generator. My question is is it possible to choose two separate frequencies and have the generator alternate between the two tones automatically (similar in nature to the two-note siren of the English police cars. I hear these two tones in my head they do alternate. I think one of them is around 210 Hz and the other is around 160 Hz.

    Thank you,

    ~Mark F,

  • Mike

    I have found this program very helpful and listening to the sound I need for a whistle I was making.
    My only problem was, my whistle is a chime whistle with three different notes. I would like
    to hear the sound of all three notes together, maybe I need three laptops one for each note.

  • MB

    I compared your generator to others and yours is a half step flat.

    You might want to check that.

    Peace,
    MB

  • Echo

    The max tone I can hear is 19,123 Hz. I don’t think that’s normal….

  • glamdrag

    i use this to prevent my JBL from going on power saving mode by generating a low volume low frequency tone in the background. When i watch movies it idles when there is no sound in the movie, so when someone speaks after a pause, the first part of the sentence gets chopped off before the JBL turns the sound on again. Now it stays on because of the low background sound from the generator. THank you!

  • Will

    Tried to donate however I cannot proceed without agreeing to paypal’s privacy statement, I cannot, I do not agree to anything related to paypal. I can send you a cheque?

  • DeeZee

    Great invention! I use it at 1550hz to blast out telemarketers ears when they call. 1550 is right in the sweet spot for what the landline telephones will transmit.

  • Doon

    Love this tone generator, but I wish it was a stand-alone software that I could run offline on an old XP system I use for music offline. No matter, nice tone generator, simple to use and works great, and the fine tone adjustment is a nice touch. Good job! And Thank you!

  • Lukas

    Got some new speakers and I noticed a ratteling in one. Used this to figure out at what frequencies it is most noticable. But after playing around with this generator and having it turned slightly too loud it self corrected 😀

    10/10 looks good, works perfect and no annoying ads but high quality info

Leave a Reply to Tomasz P. Szynalski