Arduino Leonardo vs Micro: Same ATmega32U4, Different Form Factor

Arduino Leonardo vs Micro comparison: both use the 16 MHz ATmega32U4 with native USB, 20 digital I/O, 7 PWM and 12 analog inputs, but differ in size, breadboard use, shield compatibility, SPI access and power connections.

The Arduino Leonardo and Arduino Micro are extremely closely related boards.

Both use the same:

So this is not really a performance comparison.

The real choice is:

Quick Comparison

Feature Arduino Leonardo Arduino Micro
MCU ATmega32U4 ATmega32U4
CPU 8-bit AVR 8-bit AVR
Clock 16 MHz 16 MHz
Logic voltage 5 V 5 V
Flash 32 KB 32 KB
Bootloader use 4 KB 4 KB
SRAM 2.5 KB 2.5 KB
EEPROM 1 KB 1 KB
Digital I/O 20 20
PWM 7 7
Analog inputs 12 12
Native USB Yes Yes
USB keyboard/mouse Yes Yes
Hardware UART 1 1
I2C D2/D3 D2/D3
SPI ICSP header D14-D16 plus ICSP
Barrel jack Yes No
Breadboard friendly No Yes
Typical shield footprint Yes No
Size 68.6 × 53.3 mm 48 × 18 mm
Weight About 20 g About 13 g

Same Processor, Same Performance

Both boards use the:

running at:

There is no meaningful CPU-performance advantage for either board.

The same sketch doing the same work will generally perform the same on Leonardo and Micro.

Same Memory

Both provide:

This means the same AVR memory limits apply to both.

For example, large:

  • display buffers;
  • JSON documents;
  • arrays;
  • strings;
  • USB data structures;

can quickly consume the 2.5 KB SRAM.

Native USB Is Identical in Principle

The ATmega32U4 includes USB hardware directly.

So both boards can appear to a computer as:

  • USB CDC serial;
  • keyboard;
  • mouse;
  • custom USB HID device.

This is the biggest reason to choose either board over an UNO R3 for USB-input projects.

Both Use Serial for USB and Serial1 for D0/D1

On both boards:

This allows USB Serial Monitor and a hardware serial peripheral to operate independently.

USB HID Projects Work the Same

Both support:

so either board is suitable for:

  • macro keyboards;
  • stream-deck-style controllers;
  • simulator button boxes;
  • custom keypads;
  • assistive interfaces;
  • mouse emulation.

The Main Difference Is Physical Size

The Leonardo is approximately:

The Micro is approximately:

Micro is therefore dramatically narrower.

This makes it much easier to embed in:

  • small enclosures;
  • control panels;
  • custom keyboards;
  • portable controllers;
  • breadboard prototypes.

Micro Is Breadboard-Friendly

The Micro is designed to straddle the centre gap of a standard solderless breadboard.

This gives direct access to both rows of pins.

A typical prototype becomes:

with no shield or jumper adapter required.

Leonardo Is Better for Arduino Shields

The Leonardo uses the classic Arduino board layout.

This allows many UNO-style shields to physically plug directly onto the board.

Examples include:

  • relay shields;
  • motor shields;
  • LCD shields;
  • prototype shields;
  • Ethernet shields.

Electrical and software compatibility still need to be checked, especially for shields that assume UNO pin mappings.

Leonardo Has a Barrel Power Jack

Leonardo provides:

for external power.

This is useful in a standalone installation where you do not want USB to be the main power source.

Arduino specifies:

Micro Has No Barrel Jack

The Micro is normally powered through:

  • Micro-USB;
  • VIN;
  • regulated 5 V input where appropriate.

For a compact embedded build, that is usually not a problem.

For bench projects, Leonardo’s barrel connector can be more convenient.

Digital Pin Functions Are Fundamentally the Same

Both boards use the same ATmega32U4 Arduino variant, so the familiar mappings include:

Both Have Seven PWM Pins

PWM is available on:

This is identical between the boards.

Both Have 12 Analog Inputs

The first six are:

with core digital aliases:

The additional six share physical pins:

ADC Performance Is the Same

Both use the ATmega32U4:

with the normal Arduino:

range of approximately:

Neither Board Has a True DAC

On both boards:

not a true analogue voltage.

If you need a DAC, add an external device.

I2C Is the Same

On both boards:

and the normal library is:

SPI Is Where the Physical Difference Matters

On the ATmega32U4, SPI is:

The SPI hardware is the same on both boards.

But the physical access differs.

Leonardo Uses the ICSP Header for SPI

On Leonardo, the normal way to connect SPI is through the:

This is important because:

are not the Leonardo’s hardware SPI pins as they are on UNO R3.

Micro Exposes SPI on the Board Edge

The Micro exposes:

on the main board edge as well as making the SPI peripheral available through ICSP.

This is more convenient on a breadboard.

Micro Also Exposes D17 / SS / RX_LED

Micro exposes:

as a usable board-edge connection.

Leonardo does not expose that signal in the same convenient physical layout.

External Interrupts Are the Same

Both boards support normal Arduino external interrupts on:

because they share the same ATmega32U4.

Built-In LED Is D13 on Both

Both use:

so the standard Blink example behaves the same.

Both Use 5 V Logic

Both operate with:

This can be useful with:

  • older TTL modules;
  • classic AVR accessories;
  • 5 V LCD modules;
  • legacy Arduino circuits.

Modern 3.3 V devices still need to be checked for 5 V tolerance.

3.3 V Rail

Both provide a:

rated at approximately:

for small peripherals.

Micro Is Better for a Custom Keyboard

If the project is:

the Micro’s narrow form factor is usually easier to install inside the enclosure.

The performance is identical to Leonardo, so there is little benefit in using the larger board unless its physical layout helps.

Leonardo Is Better for a Shield-Based Controller

If the project already uses:

  • UNO-style shield;
  • prototype shield;
  • large wiring harness;
  • barrel-jack supply;

Leonardo is usually easier.

Micro Is Better for Breadboard Development

For experimenting with:

  • sensors;
  • buttons;
  • LEDs;
  • SPI devices;
  • I2C modules;

Micro can sit directly on the breadboard.

Leonardo Is Easier to Probe on the Bench

The larger board gives:

  • more physical space;
  • standard Arduino headers;
  • easy clip/probe access;
  • stable mounting;
  • barrel-jack power.

That can make it more comfortable for classroom or bench development.

Micro Is Better for Permanent Integration

The smaller dimensions make Micro easier to mount inside:

  • joysticks;
  • button boxes;
  • custom control panels;
  • robot controllers;
  • small instruments.

Software Compatibility Is Almost Identical

Because the two boards share the same MCU and AVR core, the same sketch will usually compile for both with no changes.

Libraries using:

  • Keyboard;
  • Mouse;
  • Wire;
  • SPI;
  • Serial1;
  • EEPROM;

normally behave identically.

When Code May Still Need Changes

Differences can appear if a sketch assumes:

  • a particular physical board connector;
  • a shield layout;
  • SPI is wired through a certain header;
  • specific LED behaviour;
  • a fixed mechanical arrangement.

The MCU-level software is essentially the same.

Both Have the Same USB Upload Behaviour

Because USB is handled by the same ATmega32U4 that runs the sketch, both boards:

  • disconnect from USB during reset;
  • use the ATmega32U4 bootloader;
  • use the 1200 bps touch mechanism during normal upload;
  • can temporarily appear on a different serial port while bootloading.

Decision Table

Requirement Better fit
Smallest board Micro
Breadboard use Micro
Compact USB keyboard Micro
Embedded button box Micro
SPI access on board edge Micro
UNO-style shield use Leonardo
Barrel power jack Leonardo
Large bench prototype Leonardo
CPU performance Same
Memory Same
USB HID capability Same
PWM Same
ADC Same
UART/I2C Same

Quick Reference

Final Thoughts

Arduino Leonardo and Arduino Micro are functionally almost the same board built in two different physical formats.

Choose Leonardo when you want:

  • classic Arduino shield compatibility;
  • a barrel power connector;
  • large headers;
  • comfortable bench development.

Choose Micro when you want:

  • small size;
  • breadboard compatibility;
  • compact USB HID projects;
  • SPI pins directly accessible on the board edge;
  • easier permanent installation.

There is no meaningful performance reason to choose one over the other.

Both give you:

So the decision is overwhelmingly about:

For detailed pin mapping, see our Arduino Leonardo pinout guide and Arduino Micro pinout guide.

Share your love