Back to homepage

Automated Crypto Investing — Product Design Exercise

Designing a calm, automated Bitcoin investing experience.

Client Self-initiated
Industry Fintech
Role Product design · Visual direction · Design foundations
Platforms iOS app
Duration 2026
Home screen with balance, portfolio, cards and the Buy the Dip offer
Live Buy the Dip strategy: status, strategy value, current dip, price line, controls and overview
Resume and buy? drawer shown over the paused strategy

The idea

Set three values once. When Bitcoin drops by the chosen trigger, the app buys automatically until the total cap is reached.

Dip trigger
5%
Per buy
€100
Total cap
€900

You set

Price monitoringServer-side, even with the app closed
Reference-price resetAfter every buy
Market executionAt trigger time

The system handles the rest

Most of the time,
nothing happens.

The challenge was making inactivity feel intentional, not broken.

Calm over engagement

New to Bitcoin Already buying dips by hand

When Bitcoin drops, I want my app to buy automatically so I don’t have to watch the market or second-guess my timing.

User needs
ConfidencePredictabilityLess emotional tradingControl
Growth temptations
UrgencyFrequent notificationsFOMOMid-crash upselling

The goal is confidence, not urgency.

Offer card on Home inviting the user to set up the dip-buying strategy
Entry point on Home. The feature stays visible without creating urgency, while monitoring continues in the background.

Three things I left out on purpose

01

Price-scenario predictions

Why not

Forecast scenarios can imply expected returns and make the feature feel more speculative.

Instead

Show strategy facts only: limits, invested amount, performance and activity.

02

Manual “Buy now”

Why not

It brings back the timing decision the automation is meant to remove.

Instead

Keep the core controls to Configure, Pause and More. A manual choice appears only when resuming after a missed trigger.

03

Red / green price colouring

Why not

A dip is the event the user is waiting for, not automatically a negative state.

Instead

Keep the chart neutral and mark completed buys separately.

Control rows: Home has Add money, Accounts, Cards, More; the strategy has only Configure, Pause, More
Strategy header: Active status, strategy value, current dip and a neutral white price line with the last buy marked

Product rules → UI decisions

Rule

Reference price resets after every buy.

→
Implication

A sharp drop can trigger several buys within seconds.

→
UI decision

Summarise the burst instead of sending repeated notifications.

Rule

Buys execute at market price.

→
Implication

The trigger price is not the execution price.

→
UI decision

Do not promise an exact purchase price.

Rule

Monitoring runs server-side.

→
Implication

The feature must work with the app closed.

→
UI decision

Treat price monitoring as a real product capability, not just interface copy.

Rule

Insufficient balance skips the buy.

→
Implication

The user needs a clear explanation.

→
UI decision

State explicitly that the next buy will be skipped.

Building the visual system

Principle 01

Calm

Avoid trading-floor aesthetics and unnecessary urgency.

Principle 02

Precise

Financial information should scan instantly.

Principle 03

Distinct

Brand moments should feel recognisable without competing with utility.

Colour carries a role, not a mood

White text 20.2:1
Nightfall#030511Base background
vs base 1.28:1
Graphite Glass#1F2229Surface
White label 6.7:1
Electric Flight#2F36FFPrimary / brand
On base 11.0:1
Signal Green#12D992Success
On base 9.3:1
Alert Mist#FF8F8FWarning
Electric Flight #2F36FFViolet Pulse #BF00E5Aurora Cyan #00D0FF

Brand ≠ everyday UI

The brand gradient is reserved for moments such as Home and the live strategy, not everyday UI chrome.

UseHome header · live strategy · offer card
NeverButtons · cards · lists · status
Live strategy gradient#2132A5 → #030511

Two typefaces, two jobs

Aa
Spline Sans
Display / personality
€3,460.50
Aa
Inter
UI / readability / data
Price dropped >5% while paused.
Wordmark€3,460.50Spline Sans 600 · 32
Heading 1Strategy overviewSpline Sans 600 · 24 / 120%
Heading 2PortfolioSpline Sans 600 · 20 / 130%
BodyBitcoin dropped more than 5% while paused.Inter 400 · 14 / 150%
LabelAdd moneyInter 500 · 14 / 120%
CaptionPersonal balance · 0.00049 BTCInter 400 · 12 · +0.5px
Micro StrongActiveInter 600 · 11 / 15 · +0.75px
Tracking opens as size shrinks
Personal balance14px+ → 0
Personal balance12px → +0.5px
Personal balance11px → +0.75px
Proportional
€1,111.11
€8,080.40
€17.10
Tabular
€1,111.11
€8,080.40
€17.10

Financial values use tabular numerals so live updates stay visually stable and columns remain aligned.

Layout & components

A small set of spacing, row and control patterns keeps the screens consistent.

16px screen margin
32
Overview
12
Limits
Performance
Info
32
History
12
Auto-Buy
Pause
16 · 32 · 12Spacing rhythm

Screen margin · section gap · header-to-content gap

62 · 38 · 20List rows

Row height, icon badge, icon. Title plus one detail line.

48pxButtons

Primary and control buttons share one height.

shape = typeCorner logic

Text actions are rounded rectangles; icon controls are pills and circles.

● ActiveStatus

Dot plus Micro Strong label, top-left of the live strategy.

≥ 44ptTap targets

44pt minimum. The “See all” link falls below it.

Home quick actions and strategy controls: two rows built from the same control pattern
Control row · Home and strategy, one pattern
Drawer with a question, one primary button and a text alternative
Drawer · handle, one primary action plus one text alternative

One control-row pattern works in two contexts: labelled actions, with More always last.

Language is part of the system

Avoid
Use
This dip
Current dip
Budget
Remaining
Dip is the noun.
Drop is the verb.
  • Current dip 0.09 %
  • Price dropped >5% while paused.
  • Buy automatically every time it drops.

The final experience

Home screen
01 · Home

Offered, not pushed.

The strategy appears alongside other offers, without countdowns or urgency.

Live strategy screen
02 · Live strategy

Quiet, but clearly on.

Status, value and current dip stay visible, so inactivity still reads as intentional.

Resume and buy? drawer
03 · Resume

Resume without ambiguity.

If the trigger was crossed while paused, the user can buy when resuming or reset from the current price.

Overview card: Limits, Performance, Info
Overview. Strategy facts only, no forecast.
History list: Auto-Buy, Pause, Auto-Buy, Start
History. Every automated action leaves a record.

Audit → iteration

I reviewed the finished screens for contrast, interaction size and consistency, using the actual composited colours.

1
Review findings
Every text colour5.0:1+ ✓
Card vs background1.11:1
Card border · glass buttons1.12–1.28:1
Icon badge vs card1.13:1
“See all” tap target< 44pt
One figure, three formats34.10% · 32.10% · 33.42%
Surface ramp · neighbour contrast
900
#030511
800
#10131D
700
#1F2229
1.10:11.16:1

The surface levels sit too close together in luminance. Non-text target: 3:1.

2
Adjustments
  • Increase separation between surface levels across the shared palette.
  • Bring interaction targets up to the 44pt minimum.
  • Standardise numeric formatting across screens.
3
ValidationNext iteration
  • Adjacent surfaces and key boundaries meet the 3:1 target.
  • No interaction target falls below 44pt.
  • Each value uses one consistent numeric format across screens.

The review pointed to shared foundations rather than isolated screens.

Text contrast was already strong. The main opportunities were clearer surface separation, consistent interaction sizes and numeric formatting.

What I’d do next

01

Validate comprehension

Test whether users understand when the strategy is active, waiting, paused and triggered.

02

Regulatory review

Validate investment wording and automation behaviour with a specialist.

03

Stress-test edge cases

Replay sharp market drops, repeated buys, pauses and low-balance scenarios.


Back to homepage