Server calls as a design constraint
Who this page is for
| Audience | Why it matters to you |
|---|---|
| Implementation engineers | Must design within server call limits |
| Analysts | Understand the trade-off between data and cost |
Server calls as a design constraint
Adobe Analytics charges by server calls (also called hits). This is a hard constraint that shapes your measurement strategy.
What is a server call?
One server call = one hit sent to Adobe Analytics.
Hits fire when:
- Page loads (page view hit)
- User triggers a tracked action (custom link, download, video milestone)
- You fire a manual tracking call
Server call pricing
Pricing varies by contract, but a typical mid-market contract:
- 500K server calls/month included
- $0.50 per additional 1K calls
If you fire 1M calls/month, you've exceeded budget by 500K calls = $250 overage.
Why this matters
A high-traffic site can burn through server calls fast.
Example: A news site with 10M page views/month
- 1 page view = 1 server call minimum
- 10M page views = 10M server calls
- At $0.50/1K overage = $4,750/month overage (if budget was 500K)
So tracking must be deliberate. You cannot track every possible user action without exceeding budget.
Server call sources
Page view tracking (highest volume)
- Every time a page loads → 1 hit
- Most sites' largest call volume
Event tracking
- Click "Download PDF" → 1 hit
- Submit form → 1 hit
- Play video → 1 hit (or multiple if tracking milestones)
- Triggered from JavaScript rules
Automated tracking
- If you enable link tracking for all outbound links → many calls
Design for budget
Strategy 1: Selective tracking
Track only high-priority user actions:
- ✓ Form submissions (critical business event)
- ✓ Video starts (content engagement)
- ✗ Every button click (too expensive, low signal)
Strategy 2: Throttle high-frequency events
If you track scroll depth:
- Don't fire on every scroll pixel (would be 1000s of calls)
- Fire on milestones: 25%, 50%, 75%, 100% scrolled
Strategy 3: Server-side consolidation
Send multiple events in one hit:
// 2 hits: wasteful
sendEvent({ events: "event1" });
sendEvent({ events: "event2" });
// 1 hit: efficient
sendEvent({ events: "event1,event2" });
Strategy 4: Sample for low-value insights
If you want to track every field interaction:
- Only sample 10% of visitors → 90% reduction in calls
- Trade: you lose precision on that segment
Example Super's server call budget
Example Super's contract: 500K/month included
Actual usage:
- 50K page views/month = 50K calls
- 5K form submissions = 5K calls
- 2K video starts = 2K calls
- Total: 57K calls/month
They're well within budget and can add more tracking without overage.
Server call limits (hard ceiling)
Even with unlimited budget, Adobe has soft limits (they may throttle or reject excess traffic):
- Standard: 500K calls/month per report suite
- Can negotiate higher, but expect delays if you exceed 2M/month
Avoiding overage
- Audit your current tracking — measure actual calls firing per day
- Estimate new tracking — if you add 10 new events, how many calls is that daily?
- Prioritize ruthlessly — track only what drives decisions
- Test on sample — roll out to 10% of visitors first, measure, then expand
- Monitor monthly — set alerts at 80% of budget
Measurement principle
Not everything that can be measured should be measured.
Choose metrics that:
- Drive business decisions
- Are sustainable within server call budget
- Have high data quality
- Align with your measurement plan
Example Super should not track "timestamp of form page view" if no one uses that data. Save the calls for something that matters.