Case study 05 / Consumer research platform / Brand & product

AKTIV

A mark and a working product, built together. Outdoor brands connect a Shopify catalog and get back real testers, real sentiment, and one dark room to read it in.

getaktiv.org
Role
Identity, product, build
Year
2026
Build
Next.js 15 · Firestore · Shopify
Surface
Brand dashboard
01

The brief

No identity, no product. Only a thesis: outdoor brands guess at what their gear does in the field. Give them proof.

01

A mark that holds at 98px in a collapsed sidebar and still reads as forward motion on a trade-show banner.

02

One room where a brand manager sees their whole catalog, their tester cohort, and the sentiment sitting behind a 3.8 rating.

03

Catalog pulled live from the brand's own Shopify, so onboarding is a connect step. Never a spreadsheet import.

02

Anatomy ofthe Aktiv mark

Aktiv gets people into sport. The wordmark is a letter that points forward.

SLANT
10°
DIAGONAL
36.5°
RADIUS
0
OVERSHOOT
+12.8%
GAPS
0
MIN SIZE
88px
01
02
03
04
05
06
07

01–07 KEYED TO THE NOTES BELOW

01

36.5° diagonal

The A's outer leg, the K's chevron, and both V strokes sit on one angle.

02

Zero-gap lockup

Letters touch. The word is one mass, which holds up when it shrinks or gets stitched.

03

10° slant

Every vertical leans 10° off upright.

04

Arrow counter

The counter inside the A is an arrowhead, aimed up and canted with the slant.

05

Leg breaks the baseline

The A runs 12.8% below the baseline the other four letters share.

06

Equal stem weight

Diagonals are drawn slightly heavier than uprights so they match optically.

07

Zero radius

Flat terminals, sharp corners. No detail small enough to fill in at 16px.

08

Six paths, no effects

No gradient, shadow, outline, or live text. Six filled shapes. One file for web, print, and stitch.

Fig. 02 · The counter

The A's counter
is an arrow

The A needed a counter. That counter is an arrowhead. Nothing extra was added to the wordmark.

Fig. 03 · Palette

#B776D9

Lifted violet. Used on the A.

#270E34

Near-black plum. Used on the rest of the word.

Range

The ramp between them. The logo itself stays two flats.

Fig. 04 · Clear space

XX

X = half the cap height, 20px against this 240px lockup. Measured off the flat sides of the word, not the A’s overshoot, so the mark never gets crowded.

Fig. 05 · Minimum size

260
150
88 MIN

At 88px wide the arrow counter is still open and the T crossbar still reads. Below that, use the icon rather than a wordmark that has turned into a smudge.

Fig. 06 · Lockups

PRIMARY / HORIZONTAL

ICON / APP + AVATAR

GETAKTIV.ORG

STACKED / WITH URL

Fig. 07 · Stress tests

Favicon

The chevron alone. No stem, no wordmark. It still reads at 16px: the counter closes up, the silhouette does not.

Dark ground

On dark, the plum swaps to #EFE3F6, a violet-tinted off-white, not plain gray, and the A holds its #B776D9. A second file, not a filter.

One color

Flattened to a single ink for stitching, screen print and etching. The counter is wide enough to survive a needle.

03

In thefield

The mark on a shipping box and a five-panel. Same forward A, holding at merchandise scale.

AKTIV wordmark and A mark printed on white shipping boxes
Packaging
AKTIV embroidered patch on a five-panel camper hat
Five-panel
04

Four parts,seven pages

One panel, one metric, one row, one assistant. Overview, products, testing, feedback, audience, brands and intelligence are all assembled from these.

ACampaign card
No
image

Product

Approved testing product

Test 02

Uses automatic test title

Created 14 Mar 2026

Submitted

18 survey responses

A product header card, then one nested row per test campaign. Name, survey title, created date, status badge, response count. Cards sit on translucent panel fills.

BSidebar
AKTIVbeta

Products

LibraryCOMING SOON
Live Products

Testing

Create Test
Active Tests

Four groups. Products, Testing, Athletes, Intelligence. Each a 13px semibold label over 32px rows. Unbuilt surfaces stay visible at 50% opacity with a COMING SOON badge rather than being hidden, and Live Products carries a pinging emerald dot.

CFeedback row

Straps held on a wet 12-mile day

Tester 0231 · 4 days ago

Positive

Hip belt rubbed above 25 lb

Tester 0198 · 6 days ago

Mixed

Quote, tester, elapsed time, sentiment. The sentiment chip is classified server-side, so a brand scans tone before reading a word.

DAli, the assistant
Ali

Ali

Which SKU lost the most testers mid-campaign?

Ridgeline 30L. 26% dropped after the week-two survey.

A panel, not a floating bubble. Ali answers against the brand's own scoped data, so the reply is a query result rather than a guess.

05

Underthe hood

Scoped sessions, a live Shopify catalog, and Stripe for the money that moves behind a brand account.

App

Next.js 15 · React 19. Auth and dashboard route groups, one shell.

Data

Firestore for testers and campaigns. Catalog reads live from each brand's Shopify.

Intelligence

Three model routes. Dashboard chat, survey chat, sentiment classification.

Pay

Stripe settles brand accounts and campaigns. No bolted-on checkout.

Stripe product collage, financial infrastructure screens

600+

Users

50+

Brands via Shopify Collective

7

Dashboard surfaces

Brand and product, built together.