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.

Tags:

425 Comments so far

  • Jim Busse

    Thanks you. This is great work.

    I had to sell my HP sig gen when I moved to Singapore (220V here) and wish this generator had a sweep frequency capability. It would be nice to use the slider to set the min frequency, have another button to set the max frequency, and a start/stop button to allow free-running repetition.

    This one is helping me out, thanks!

  • Dale

    Hi. We’re trying out your tone generator for my wife, who has mild memory loss. Luckily, we were given a powered subwoofer made for computer output. Thanks so much! Wish us luck.

    What we’re missing is the nuances of its use. I’m hoping you can supply them or recommend an authoritative info source. We have the woofer in a corner, but other issues include:
    Which wave form is best? We’re using sine right now.
    Do headphones work better than an open-air speaker? Self-canceling headphones?
    Can the tone be effective in a space with other noise—such as voices, TV or clatter—or must it be the sole sound?
    The sound freaks out our cat a little, at least now, as we start. Will it hurt pets, physically, emotionally or mentally?

    Hope you can help. Keep up the good work!

  • Steen Oluf Karlsen

    Hello Signalski guy(s)- Steen ok from the Tech High School in Thy Danmark here!
    Two teenagers in my class have built an audio Frequency analyser – with an fft algorithm from Steve Smiths online resource book (hereby recommended!) We have tested and tested again the ability to – get the different ingredients of the “slush ice audio” back in their respective boxes as one of the boys put it! Sometimes I have been wondering how good the precision is for the frequency content in the signalsky generator? Especially when our equipment disagreed… Will the frequency of the generator be affected by the clock freq of the PC that generates the signal? How can you control the frequency across the many different processor types / platforms?

    • Tomasz P. Szynalski

      The processor doesn’t affect the frequency. In electronic audio, the analog audio signal is generated by a DAC which has its own clock. I would not expect significant deviations, but I have not tested it (not even sure how?). FFTs, on the other hand, are not very precise because of the need to separate the signal into frequency bands.

  • Aden Gusic

    Hey There!

    Thanks so much for creating this site! its is so good, i really like this tone generator.
    i like pranking my friends in class.

  • David Tartakoff

    There is no key combination to raise or lower frequency by 0.1Hz – can there be or is there one that you don’t list?

  • Heir2Power

    This is such an awesome tool. I use it for so many reasons – even to train my dog! Been using it for a while now, but still hoping it can be an app in Google Play store soon. Many times when I reopen my mobile browser I have to reset the settings and it’s not great when I have to get the tone going instantly when my dog is doing something naughty lol. And no it doesn’t hurt her ears… She just bugs out and wonders what the heck is that noise haha. Works great
    Great job

  • Mutayyab Tariq

    This works, you can use this to scare away pests like flies and mosquitoes in your house, I know the insects adapt and overcome this frequency thing but as long as they are not this is very useful. If you are wondering what the frequency to piss off mosquitoes is, then it is 20,000 hz leave it in your room when you are away and this will work!

  • RODRIGO GARCIA BALEIRO

    Thank you for your useful tool. If you may, I would ask you to implement the possibility of generating a phase shift between left and right channel outputs. In my case the main application would be for the simulation of noise cancelling in the balanced cables. For this we use 180 degrees of difference between each channel. For those who are willing to do it while the website doesn’t bring this option, you can use Audacity tone generator and invert the signal (menu Effects).

  • shaman

    Hi! Could you, please increase frequency range up to 50kHz. It will help to use application as a generator for testing of DACs, Hi-End amplifiers and headfhones

  • Riley

    Hi! I’m building a JavaScript program that needs to utilize the ability to generate specific tones, but I couldn’t find any sort of library I could use online. Could you please tell me what libraries or methods you used to generate these tones? I’m not looking for a tutorial, haha, so don’t worry. I would appreciate any response. Thank you so much!

  • Adam

    Hi,

    I found something very strange with the frequency generator.

    I can’t hear the 18000 range. However, I wanted to test if a frequency I can’t hear would affect my tinnitus. The exact frequency just below my audible range.

    So I went slowly up, 17000, 17100, 17200 and so on. However, I found that I could hear the 18000hz range now. Weird. I then set the volume to 0. I hit the play button, and I could now hear a phantom 18000hz.

    Thesis, I think there may be a way into tricking tinitus off in the brain using this method.

    I found after doing this, I can consciously manipulate my tinitus, its volume pitch and location. to an extent.

  • Mr. Cowell

    Hi, My tinnitus varies from 8 to 16k It needs 70 db just to tune it out. Life can suck real bad.
    My question is, Can you get the tone generator to create tones, down past 1k to the negative tone pitch, to counter the “positive” antagonist pitches.
    The created an electronic muffler based on this theory, and it worked for the better part, however there were too many changes to keep up.
    Imagine needing 70+ DB just to overtake that horrible noise.
    Gee, how do I sleep with this?
    Very litttle and boy it sets of my PTSD.
    I did well, no swearing, oh joy.
    Thhanks for the time.

  • Dan

    I went to this site as a curiosity. Tones can have a beneficial effect in healing. I would like to see a built in subprogram that would input different frequencies and time periods for those frequencies. This would be great for those doing meditation that focuses on the chakras, or simply before you go to sleep. As with all trial periods give a free 30 day trial period. That is enough time for a person to see a turn around in their life. They can continue with your subprogram with a donation.

    Opening 2 tone generators at once demonstrates “beat” frequencies for music students.

    I tested my frequency range but got no response for 60 Hz AC grounding hum.

  • Janus

    Hi Tomasz,

    Kindly could you consider adding a fine tune function for the volume slider?

    Left or right arrow will be great as mouse sensitivity makes it a nightmare to get the volume at the right setting.

    Much appreciated,

    J

  • Judith D. Andrade

    I like it! Thank you.

  • Carl Henrik

    Hi, Carl From HD SoundLab here. We use your tone generator a lot for various calibrations, for example listening to the SPL profile of a headphone.

    FEATURE REQUEST: Would it be possible to offer yet another feature that jumps in centimeter(s) instead of frequency? To quickly test the profile and balance across the spectrum, since the spectrum is logarithmic, “centimeter” is actually a valid parameter, but call it whatever. The “move up one frequency” isnt that useful in the treble area.

    Quite another issue: I am into water fasting, said to be helpful for age deseases like Alzheimer. Why not mention it? Some outline of fasting effects are found at my blog noach.one, and note in particular the response from the Finnish fasting expert. Perhaps a combination of 40Hz sound treatment and fasting would be a way to prevent that desease? An very interesting thought, indeed.

  • Derigo Simoni

    Hi, Derigo’s here. I was wondering whether you program (or computer) can generate frequency more than 22kHz (or what is the ceiling frequency) ? I am working on some experiment here. I know 44.1 kHz / 2 = 22.05kHz is recording Hz, but is it possible to produce higher frequency on computer ?

    • Tomasz P. Szynalski

      It’s not possible to represent higher frequencies with 44.1 or 48 kHz audio, so you’d need to set your playback to 96 kHz. In addition, a DAC has a lowpass filter. I’m not sure about DACs in 96 kHz sound cards — maybe there are some that can output higher frequencies than ~20 kHz.

      • Derigo Simoni

        Hi, Tomasz, again this is Derigo. Your online tone generator is the best. I am now testing low frequency from 20Hz to 100 Hz with normal speaker, however, I was recommended to use transducer speaker because it’s lasting for low frequency. I have a few questions here and I hope you could help me with.
        1) When I connect my transducer speakers to your Tone Generator (using my laptop), no sound come out from transducer speakers. Do I need a normal amplifier or DAC amplifier? (My Laptop model is Aspire E14 E5-476G-5486)
        2) The Sine Wave from your generator is very smooth already, how to produce a near perfect Sine Wave output, can I add another DAC to the output of my laptop before the signal goes to speaker.
        3) Transducer speaker is recommended for what range of audio.
        4) Is sample rate 44.1kHz acceptable for low frequency recording if I need a near perfect Sine wave.
        I would really appreciate your expert opinion. Thank you in advance.

  • Andrew Mueller

    How about a selector? You could give someone the freedom of key-tapping things with a great granularity.

    I was just doing some gain matching and crossover fine tuning. While I was tapping the keyboard to granularity step my way from 20 to 28hz I was actively thinking that the ability to see a decimal or “exact” frequency while stepping and more over: the ability to chose my stepping ratio would just make this perfect.

    As for the Alzheimers. I always knew there was a reason I loved 40 hz. I cant hear a damn thing anymore but my mind is as sharp as a tack.

    Thank you for all your hard work on this high quality generator.

    • Tomasz P. Szynalski

      Andrew,
      You always see the exact frequency on the readout. When you use the arrow keys or drag the slider, the frequency is always a multiple of 1 Hz. Sometimes pressing the arrow key does nothing (only happens in low frequencies), but I’ll be changing the ratio, so it’s only temporary. About the ability to choose a ratio that is applied when you press the arrow keys — yeah, that’s not a bad idea. I’d have to add some kind of settings window to avoid cluttering up the screen.

  • Sven Edward Olbash

    Thank you for this very useful tool! I have used it with my singing classes. I was going crazy, though, wondering why A440 was actually playing something like a very sharp Bb (I tested it with VoceVista). I tried refreshing multiple times, same thing. I finally disconnected from my bluetooth speaker, and through my internal speakers the pitch was correct as 440. My bluetooth speakers do not change the pitch of anything else I play through them. Why might this be? Thanks again!

  • philippe

    very good site just missing a db setting to calibrate the sound level. Thanks a lot

Leave a Reply to Tomasz P. Szynalski