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.

999 Comments so far

  • Len

    Great app. Wondering though,,,

    Any way to use increments on an android phone which has no “control” button?

    Any future plans on giving us the option to save favorite frequencies?

    Regards,
    Len

  • Kai Martinkovic Germany

    Hi Tomasz, i´m using this wonderful tool since years. Long time ago i asked you about the possibility to add a pink noise and 500ns pulse generator in. I use the generator in addition to smart audio. Its great to center resonance frequencies in subs because room responses. My idea would safe a lot time during manual correction smart does automatically. Me i´m not the only tech would be apreciated if its possible.

    Thanks a lot in advance

    Kai Martinkovic
    WeStreamMuc UG

    Munich Germany

  • Mireille

    I wish I could give you more but I have a mobile app myself and so I understand your need to constantly being updating for new versions of phones Etc the thing I don’t understand is how to do it myself. I actually had my app taken off of the Google Play Store because I did not know that I was supposed to be updating it. I’m currently trying to get it back on. I have so much more I want to do with the app but like you said, having to do updates and maintain is a Pia and although eight out of 10 horse people that find my mobile app will sign up for it I don’t have the means to advertise or the time because I’m running a farm. Hence I haven’t even gone into Google to figure out how to upload it again. So I donated as much as I could right now I will donate more later and I really appreciate this tone generator. I was desperately trying to get rid of a rat chewing right behind my toilet in the wall of an old house where we cannot get underneath or in through the side or anything and we cannot use poison cuz it’s a farm and our barn cats will die eating a poisoned rat so your tone so far worked great. I plan to carry around the spare phone we have and when I hear that crunching start late at night I will pull up your site and hit them with some tones and vibrations.

  • Bernie

    Very interesting app. I have a question about the speaker on my phone. I have a Google Pixel 7a phone. But how can I tell if the phone is able to play frequencies that are very low or very high? Thank you!

    • Tomasz P. Szynalski

      You can set the generator to a frequency and check if you can hear anything. You can also use another phone with a spectrum analyzer app, which will show you in real time what frequency is playing and how loud it is.

  • Calvin

    How hard would it be to add a few features..?? Such as:

    Multi-layer audio stacking (4 layers minimum)

    Frequency sweeps with selectable curve type (exponential)

    Amplitude automation (dB over time)

    Envelope control (attack/decay per layer)

    Filter automation (low-pass + frequency sweep)

    Rhythmic amplitude modulation (BPM-locked)

    Chord/note input with velocity control

    Simple effects: mild reverb, EQ band cut

    Per-layer timing regions (start/end times)

    Render/export to WAV or high-quality MP3

  • Ilya

    Hello and thank you for this lovely tone generator. I was wondering if there is anyway that you can add a feature to the note section where one can choose an A4 reference. Then all the notes will shift correspondingly and one can see and select notes based on the new reference. It would be good for 432 enthusiasts aswell as matching Schumann resonance.

    Regards,

    -Ilya

Leave a Reply to RoCky