Skip to content

Social Impact

The Social Impact contract calculates and stores impact scores based on user activity. Impact scores are a core composability primitive — they affect fees, governance weight, and access control across the entire Akita ecosystem. All impact reads are accessed through the main SocialSDK.

import { SocialSDK } from '@akta/sdk/social'
const social = new SocialSDK({ algorand })
// Total impact (includes social + other activity)
const impact = await social.getUserImpact({ address: userAddress })
// Impact excluding social activity
const nonSocialImpact = await social.getUserImpactWithoutSocial({ address: userAddress })
// Full impact metadata
const meta = await social.getImpactMeta({ user: userAddress })

Impact is a continuous reputation score from 0 to 1,000 derived from a basket of on-chain metrics:

  • Account longevity — older accounts score higher
  • AKTA staking amounts — staked AKTA contributes to impact
  • NFD verified fields — verified Non-Fungible Domain fields increase score
  • Social activity history — posting, replying, and voting history
  • Verified social links — linked and verified external accounts
  • Follower relationships — quality and quantity of social graph connections

Impact is stored on-chain in the Social Impact contract and updates automatically as users interact with the protocol.

Users with Impact scores above 400 who interact with the social contract daily qualify for BONES token rewards from a dedicated staking pool (20% of total BONES supply distributed over 10 years). The threshold is calibrated to be achievable for genuine users who engage consistently while remaining prohibitively expensive for bot networks to farm at scale.

Many Akita operations include an impact tax — a fee percentage that scales inversely with the user’s impact score. The higher your impact, the lower your fees.

┌──────────────────────────────────────────┐
│ Fee % │
│ ┌─────┐ │
│ │█████│ │
│ │█████│ impactTaxMax │
│ │█████│─────────────────────── │
│ │█████│ ╲ │
│ │█████│ ╲ │
│ │█████│ ╲ │
│ │█████│──────────────────── impactTaxMin│
│ └─────┴──────────────────────────── │
│ 0 Impact Score → High │
└──────────────────────────────────────────┘

The impactTaxMin and impactTaxMax values are configured by DAO governance and can be read from the SDK:

const fees = await social.getSocialFees()
// fees.impactTaxMin — minimum fee % for high-impact users
// fees.impactTaxMax — maximum fee % for new users
// fees.postFee — AKTA fee for creating posts
// fees.reactFee — AKTA fee for reactions/votes/replies
SystemHow Impact is Used
SocialLower protocol fees on posts, reactions, and replies
MarketplaceLower listing and sale fees
AuctionsLower auction creation and bid fees
Staking PoolsLower pool creation fees
GovernanceHigher weight in DAO proposals
Daily RewardsImpact > 400 + daily interaction qualifies for BONES rewards
Access GatesSocial Impact Gate requires minimum score
GateDescription
Social Impact GateRequires a minimum total impact score
Social Activity GateRequires minimum social activity count

See Gates for details on impact-based access control.