Measured Comparison

Apple Character Viewer vs Raycast vs Emoji Picker

This page compares startup latency using one repeatable harness. It does not try to score features or design taste; it reports measured process-visible startup timing.

Measured 2026-02-16 on Mac15,11 (Apple M3 Max), macOS 26.2 (25C56)

Emoji Picker

95.05 ms

Warm median (7 relaunch runs)

Apple Character Viewer

95.47 ms

Warm median (7 relaunch runs)

Raycast (v1.104.6)

190.40 ms

Warm median (7 relaunch runs)

Observation in this environment: Raycast warm launch measured about 2.0x slower than native tools (190.40 ms vs about 95 ms).

Latency Bars

Lower is better. Bars are scaled to the slowest value within each metric group.

Warm Median (7 Runs)

Emoji Picker
95.05 ms
Character Viewer
95.47 ms
Raycast
190.40 ms

Scale: 0 ms to 190.40 ms

First Launch

Emoji Picker
106.56 ms
Character Viewer
93.26 ms
Raycast
174.91 ms

Scale: 0 ms to 174.91 ms

Latency Table

Tool First Launch Warm Median (7) Notes
Emoji Picker for macOS 106.56 ms 95.05 ms Process: emoji-picker-macos
Apple Character Viewer (built-in) 93.26 ms 95.47 ms Process: CharacterPalette
Raycast 174.91 ms 190.40 ms Version 1.104.6, process: Raycast

Memory And Footprint Snapshot

Tool Idle RSS Bundle On Disk Main Binary
Emoji Picker for macOS 110.9 MB 8.99 MB 3.76 MB
Apple Character Viewer (built-in) 47.8 MB 5.51 MB 0.77 MB
Raycast (v1.104.6) 143.5 MB Not retained after benchmark run Not retained after benchmark run

RSS numbers are from ps after a short settle window and include shared mapped pages.

Invocation Model Context

  • These startup timings assume the process is not resident: each app was fully quit before each run.
  • Real-world usage can differ because Raycast, Character Viewer, and menu bar tools may stay resident between invocations.
  • For always-running workflows, end-to-end insertion flow often matters more than relaunch time.

Keystroke-to-Insert Metric (Protocol)

This page currently publishes startup timings. We are adding a second metric for end-to-end insertion: trigger press to emoji inserted in an active text field, with the same fixed test document and repeated runs per tool.

Reproduce Locally

Minimal commands used for process-visible startup timing:

open -n "/Applications/Emoji Picker.app"
pgrep -x emoji-picker-macos

open -n "/System/Library/Input Methods/CharacterPalette.app"
pgrep -x CharacterPalette

open -n "/Applications/Raycast.app"
pgrep -x Raycast

When Startup Latency Matters

  • If you relaunch tools frequently or use on-demand invocation, startup latency is user-visible.
  • If the app is always running in the background, startup is less important than insertion and search behavior.
  • In short-message workflows, small delays compound quickly across repeated insertions.

Methodology

  • Each tool was fully quit before a run.
  • Startup was timed from open -n ... to process visibility via pgrep -x.
  • First-launch number is one run; warm number is median of 7 relaunch runs.
  • Command and environment were identical per tool on the same machine.

Read This Before Drawing Conclusions

  • This benchmark measures process-visible startup, not full keystroke-to-insert interaction flow.
  • Built-in and Raycast invocation paths can be configured differently per user.
  • For daily writing flow, already-running background state and query handling rules often matter more than cold startup.

Use The Data, Then Test Your Own Workflow

Numbers can filter options quickly, but real fit still depends on your typing workflow and app mix.

🏢

Imprint

inndevs GmbH
Dammstrasse 19
6300 Zug
Switzerland

VAT ID: CHE-239.879.310