Most developer portfolios die in the drafting stage. You pick a template, start customizing, get stuck on copy or layout decisions, and the tab stays open for three weeks before you close it forever.
I wanted to see what actually happens when you remove that friction. So I tracked the numbers from getfolio.dev's first 24 signups.
The end result
19 live, published portfolios out of 24 total signups. That's a 79% publish rate. No onboarding emails nudging people. No "complete your profile" reminders. Just a flow that's short enough that most people finish it in one sitting.
5 of those 19 marked themselves as "open to work." 16 connected their GitHub. The portfolios pull in repos, languages, contribution graphs, and star counts automatically from there.
How someone actually gets from zero to published
This is the real sequence, step by step.
1. Claim a username
83% of signups did this immediately. You pick a username, and that becomes your URL: getfolio.dev/yourname. No subdomain configuration, no DNS records at this stage. Just a name.
2. Connect GitHub
OAuth flow. Takes about 10 seconds. Once connected, getfolio pulls your public repos, languages, contribution activity, and stars. 63% of all signups reached this step, and from here almost nobody dropped off.
This is where the interesting part happens. Instead of manually listing projects and typing descriptions, your portfolio is already populated. Repos show up with their actual language breakdown and star counts. Your contribution graph appears. The data is live, so when you push code tomorrow, the portfolio reflects it.
3. Pick a theme and publish
Five themes right now. The split across published portfolios:
- DarkPro: 37% (the most popular by a clear margin)
- Terminal: 26%
- Editorial: 21%
- Glass: 16%
- Minimal: 0% so far, which honestly surprised me
You pick one, optionally drag sections around, and hit publish. 95% of published portfolios also opted into the Explore directory, which makes them discoverable.
4. (Optional) Custom domain and analytics
Pro tier unlocks custom domains and privacy-first analytics. One person has upgraded so far out of 20 onboarded users. Zero churn. Custom domain usage is still at zero though, which tells me the default getfolio.dev/username URL is good enough for most people at this stage.
What's actually working
The 75% end-to-end activation rate (signup to discoverable portfolio) is high for a tool with no onboarding flow beyond the product itself. I think the reason is simple: connecting GitHub does 80% of the work for you. There's almost no blank-page problem.
The biggest drop happens between signup and GitHub connection (25% drop). Some of those accounts might be people who signed up to look around. Some might come back later. I don't have session replay data, so I'm guessing.
What surprised me
Terminal theme being the second most popular. I built it partly as a novelty, figured maybe one or two people would use it. Five out of nineteen is more than I expected.
Also, nobody picked Minimal. That's the cleanest, most traditional layout. Developers apparently want something with more personality than a white page with Helvetica.
If you want to try the same thing
The whole process:
- Sign up at getfolio.dev
- Pick a username
- Connect GitHub via OAuth
- Choose a theme (DarkPro if you want to go with the crowd)
- Rearrange sections if you want, or don't
- Publish
The portfolio stays synced with your GitHub going forward. You don't touch it again unless you want to.
837 views have come in across all portfolios so far, 542 unique. Small numbers, but for a product with 24 total users and no ad spend, it means the portfolios are getting seen.
What's next
Blog sync with DEV.to and Hashnode is live. If you write articles, they show up on your portfolio automatically. I'm also watching whether the "open to work" badge (5 of 19 portfolios have it enabled) actually drives recruiter inbound. No data on that yet.
Originally published on getfolio.dev.

Top comments (0)