The 4 best transistors to keep in your parts kit

When your project needs a transistor, there are tons of choices.  Which makes answering the question “Which transistor should I use or buy?” a daunting task.  Fear not, before wading through spec sheet after spec sheet, consider one of these four general purpose transistors.  Every electronics enginerd’s toolbox should have a few of each.

Transistors are one of the most versatile discrete components in electronics.  In digital circuits, they switch on and off while in analog circuits they are used to amplify signals.  For most projects, they are used to turn on a load that would kill the I/O pin of a microcontroller or microprocessor.   For most circuits either a BJT or MOSFET can be used, depending on the load current you need to switch.

[Edit Note]  Jan (comment below) points out that there are European Equivalents that may be more available for those located in that part of the world. For NPN Check out the BC547, for PNP the BC557.

Here are some more details on each of these.

Best Transistors: BJTs

Bipolar transistors come in small packages, can be driven by I/O pins directly, and are VERY cheap. There are two variants, the NPN and PNP. These little guys are the workhorses of most control circuits, for small current applications. You’ll commonly find through-hole parts in the 3-pin TO-92 style package.

#1  NPN – 2N3904

You can find most often NPN Transistors in low-side switch circuits. This configuration means whatever you want to control is connected between the “high” voltage and the collector of the transistor. Check out this post for more information on low-side vs. high-side switches.

A common transistor I use is the 2N3904. You can easily switch big, like great than 12 volt loads with this transistor’s max 40 volt rating. Its current rating is only 200mA, but that is enough for most relays.

2N3904 from Mouser

#2  PNP – 2N3906

For high-side switch circuits, you need a PNP style BJT. A high-side circuit is where the load sits between the transistor’s collector and the circuit’s ground. Its emitter connects to the “high voltage.” Since I recommended a 2N3904 for the NPN, I will suggest its complement: the 2n3906. Like the NPN, it has the same max voltage and current ratings: 40V and 200mA. Check out this post for more information on low-side vs. high-side switches.

2N3906 from Mouser

#3  Power – TIP120

One of the advantages of BJTs is that they are easily driven from an Arduino or Raspberry Pi I/O pin. When configured as a “Darlington pair,” they can provide significantly higher current capability than single transistors. The TIP120 is a Darlington pair that can handle as much as 5 amps when in a TO-220 package. You sometimes see the same package used for LM7805 linear regulators. If you want to drive that much current, do not forget the heat sink!

TIP120 from Mouser

Best Transistors: MOSFETs

When you have to drive many amps of current, MOSFETs are fantastic. However, most do not work at “logic levels,” meaning they typically need 10 to 15 volts to switch them on properly.  Such a high voltage is tough to reach for an Arduino’s 5 volt I/O pin, let alone a Beaglebone or Raspberry Pi.

If you are new to MOSFETs, check out my MOSFET video tutorial (scroll to bottom) and this post on dispelling MOSFET myths.

#4  N-Channel (Logic Level) – FQP30N06L

These workhorse transistors have a max 60 volt and 30 amp rating. Not milliamps. Amps! (Though, you will need a heat sink!) They cost nearly 2X what a TIP120 costs, but they drive way-way more current.  The best part?  With a “logic level” compatible Vgs-threshold, an Arduino can easily drive them with its 5.0 volt output pin. These properties are why I keep a pile of FQP30N06s on hand.

FQP30N06L from Mouser

FPQ30N06L from Amazon


These four general purpose transistors will cover a wide range of uses. Having a couple of each in your box will come in handy for nearly any project.  Leave a comment below on which transistors you keep on hand.

Update:  I’ve added a quick note about the European alternatives for NPN and PNP BJTs.

Long comments, URLs, and code tend to get flagged for spam moderation. No need to resubmit.

ALL comments submitted with fake or throw-away services are deleted, regardless of content.

Don't be a dweeb.

Leave a comment

69 thoughts on “The 4 best transistors to keep in your parts kit

  1. Hi, I need to Drive a 12volt Led panel ( having a total of 32 leds in it ) ,it consumes 140 mamp current ,now i need to drive it by raspberry pi GPIO ,so can you recommend which bjt or MOSFET shall I use to drive it properly.

  2. I would like to build a Microprocessor from discrete transistors. Would look like the Monster6502. I decided to go for CMOS logic. Which transistor are best suited? My search resulted that many transistors are designed for high power, which is not the case with my processor. And thus they are usually more expensive. I found the FDV303N and FDV304P transistors by Fairchild. But they are SOT23 and therefore too tiny for soldering by hand, I fear.

    PS: I didn’t examine the electrical charecteristics yet. Will it do soon after watching some of your videos 😉

    • SOT23 are big enough for hand soldering, even with a fairly cheap iron (I often use an old Antex at work). I’ve been soldering smaller packages at work for over 10 years, including 0402 passives and 0.5mm pitch semis, but many of us need magnification – even an illuminated magnifier should be plenty for SOT23 and 0805 or 0603 passives, a stereo microscope if you plan to go smaller. I haven’t been able to persuade my boss that I do enough rework to justify something like the Mantis Elite or a digital equivalent – should you decide to go down the SMT route and get any sort of microscope, remember that working distance needs to be greater than most microscopes are designed for, and investing in a lens cover to keep crud from condensing on ithe lenses will save you much pain.
      The trick with SMT is to add flux first – the 24/26 gauge solder wires don’t provide enough, and it helps to hold the component in place. The solder you add to the joint will probably be enough for 3 or more joints on a pre-tinned PCB, dragging the tip along a row of components and they are all soldered was awesome the first time I saw it, when moving from through-hole components.

  3. Thanks for you article. I am curious what you would recommend for a jfet. It seems that the j201 is the most popular choice, but it’s limitation of 50ma leaves me to wonder if there is a better choice ?
    What I am using it for:
    I believe I need to use a jfet for a robot project. The motordriver (Sabertooth) e-stop signal line connected high (+5v) will allow the motors to operate. Removing the +5v (line is pulled low) will stop the motor driver.
    I have an e-stop button connected to to ground, and need to use that to break the 5v e-stop line (+5 to signal input). I am planning on using the j201, but am wondering if there is a better way to connect my “e-stop push button”. Thanks

    • First, JFETs are usually used for analog circuits. They are a good alternative to BJTs. (Are you confusing JFET with MOSFET? JFET is a type of MOSFET.) You typically wouldn’t use one in a switching application. An “enhancement mode” MOSFET is a better choice. Second, for an e-stop, I don’t understand why you would use a transistor at all. An e-stop switch is usually wired in at the main supply voltage. They are used to directly disconnect power in an emergency. I don’t know of any other way to wire one except at the supply.

      If you’re using an e-switch to enable or disable a transistor, that is a very bad design choice. In the event the transistor fails shorted, your e-switch may do nothing. That creates a huge safety hazard.

      • Excellent, Thanks so much for you quick response. Agreed, the e-top would be best with a SPDT push-button type switch. The +5v line would be connected to the normally closed push-button connected to the signal line. Pushing the push-button would open the circuit – signalling the motor-driver to stop. I wanted to use a small SPST push-button wired to ground to trigger a transistor to open the circuit (Thus the JFET).
        I thought the JFET would open a circuit when triggered LOW.?
        I will have to read up on the “enhancement mode” MOSFET. I have not heard of that. Thanks 🙂

  4. James, you hit right on the money with this article…incredibly useful information.

    Those 4 transistors are super awesome to have in stock on the bench. I can’t tell you how many times I’ve used the 2N3904. For higher current, the TIP120 is hard to beat as well.

    Another great general purpose NPN to have on hand is the PN2222A. They are super cheap and incredibly useful: from turning on fans, relays, or even higher power LEDs.

    Keep up the great work and thanks for the article.


    • how do this 2n2222 differs from TIP120? is this 2n2222 has enough rating to power up a 30+pcs. 12v ,1.5w led strip through my arduino?

      • 1.5 watts at 12 volts is 125 mA. The 2n2222 has a max collector current of about 800 mA, so should be kept around 500 mA. While the TIP120’s max is about 5 amps, so it should be kept around 2 or 3 amps. Since both are significantly more than 125 mA, either would work fine.

          • That sounds like you have 30 LED strips, each 1.5W. If you are trying to turn them all on with a single signal from your Arduino (30 * 1.5 W = 45 W total) it sounds like you would be far better off to use a single 2N2222 controlling power to a relay, and use the relay to switch the power to the LEDs. If you want to control each 1.5W LED strip separately, then as James said, it should be within the capabilities of a 2N2222 per strip.
            But this assumes you are turning the LEDs either full on, or off. If you are trying to control intensity by PWM, then the relay won’t work (not fast enough), and the continuous swiching of PWM may lead to a 2N2222 to over heat.
            Maybe we need more details of what you are actually trying to do, to better help you.

  5. I am currently in the beginning stages of learning how to repair amplifiers and only problem I am having is identify the wrighting for direct part replacement . This is part number I am needing bad. But no luck. 80nf70 /czod T /Mar 247/.that’s all I see on side of 3 leg fet. If you could help i sure thank you