Twitter Cultivate
Twitter account health check, growth strategy, and engagement optimization
67 downloads
Free
Reviewed
engagement
growth
twitter
Twitter Account Cultivation Skill
Systematic approach to growing Twitter presence based on the open-source algorithm analysis. Check account health, find engagement opportunities, optimize content strategy.
Prerequisites
- rnet installed (
pip install "rnet>=3.0.0rc20" --pre) - rnet_twitter.py — lightweight GraphQL client (https://github.com/PHY041/rnet-twitter-client)
- Twitter cookies exported to path specified by
TWITTER_COOKIES_PATHenv var Format:[{"name": "auth_token", "value": "..."}, {"name": "ct0", "value": "..."}]
Getting Cookies
- Open Chrome -> go to
x.com-> log in - DevTools -> Application -> Cookies ->
https://x.com - Copy
auth_tokenandct0values - Save as JSON. Cookies last ~2 weeks. Refresh when you get 403 errors.
Core Metrics to Track
| Metric | Healthy Range | Impact |
|---|---|---|
| Following/Follower Ratio | < 0.6 | TweepCred score |
| Avg Views/Tweet | 20-40% of followers | Algorithm favor |
| Media Tweet % | > 50% | 10x engagement |
| Link Tweet % | < 20% | Avoid algorithm penalty |
| Reply Rate | Reply to 100% of comments | +75 weight boost |
Workflow: Full Health Check
Step 1: Analyze Account
import asyncio, os
from rnet_twitter import RnetTwitterClient
async def analyze(username: str):
client = RnetTwitterClient()
cookies_path = os.environ.get("TWITTER_COOKIES_PATH", "twitter_cookies.json")
client.load_cookies(cookies_path)
user = await client.get_user_by_screen_name(username)
followers = user.get("followers_count", 0)
following = user.get("friends_count", 0)
ratio = following / max(followers, 1)
tweets = await client.get_user_tweets(user["rest_id"], count=20)
return {
"username": username,
"followers": followers,
"following": following,
"ratio": round(ratio, 2),
"tweet_count": user.get("statuses_count", 0),
"recent_tweets": len(tweets),
}
Step 2: Check Shadowban Status
Manual check: shadowban.yuzurisa.com
Step 3: Analyze Following List
Recommends accounts to unfollow based on:
- No tweets in 90+ days (inactive)
- Never interacted with you (no value)
- Low follower count + high following (likely bots)
- No mutual engagement
Step 4: Find Engagement Opportunities
async def find_opportunities(niche_keywords: list[str]):
client = RnetTwitterClient()
cookies_path = os.environ.get("TWITTER_COOKIES_PATH", "twitter_cookies.json")
client.load_cookies(cookies_path)
opportunities = []
for keyword in niche_keywords:
tweets = await client.search_tweets(
f"{keyword} lang:en -filter:replies",
count=50, product="Top"
)
for t in tweets:
if t["favorite_count"] >= 50 and t["reply_count"] < 20:
opportunities.append(t)
return sorted(opportunities, key=lambda t: t["favorite_count"], reverse=True)
Account Health Scoring (TweepCred)
Based on Twitter's open-source algorithm:
Score = PageRank x (1 / max(1, following/followers))
| Ratio | Estimated TweepCred | Algorithm Treatment |
|---|---|---|
| < 0.6 | 65+ (healthy) | All tweets considered |
| 0.6 - 2.0 | 40-65 | Limited consideration |
| 2.0 - 5.0 | 20-40 | Severe penalty |
| > 5.0 | < 20 | Only 3 tweets max |
Unfollow Strategy
Priority Order
- Inactive Accounts — No tweets in 90+ days
- Non-Engagers — Never liked/replied to your tweets
- Low-Value Follows — High following/low followers (bot-like)
Execution Plan
Week 1: Unfollow 30 inactive accounts
Week 2: Unfollow 30 non-engagers
Week 3: Unfollow 30 low-value follows
Week 4: Evaluate ratio improvement
Content Strategy (Algorithm-Optimized)
Tweet Types by Algorithm Weight
| Type | Weight | Recommendation |
|---|---|---|
| Tweet that gets author reply | +75 | ALWAYS reply to comments |
| Tweet with replies | +13.5 | Ask questions |
| Tweet with profile clicks | +12.0 | Be intriguing |
| Tweet with long dwell time | +10.0 | Use threads |
| Retweet | +1.0 | Low value |
| Like | +0.5 | Lowest value |
Content Mix
- 40% Value content (insights, tips, frameworks)
- 30% Engagement bait (questions, polls, hot takes)
- 20% Build-in-public (progress updates, wins, losses)
- 10% Promotion (with value attached)
Media Requirements
Every tweet should have ONE of: Image, Video (< 2:20), Poll, or Thread (7-10 tweets).
Weekly Routine
Daily (15 min)
- Post 1-3 tweets with media
- Reply to ALL comments on your tweets
- Engage with 5-10 tweets in your niche
- Check notifications and respond
Weekly (Saturday)
- Run full health check
- Review what content performed best
- Unfollow 10-20 low-value accounts
- Plan next week's content themes
Monthly
- Full ratio review (target < 2.0)
- Shadowban check
- Content audit (media %, link %)
- Milestone check (follower goals)
Download
ZIP package — ready to use
Skill Info
- Creator
- PHY041
- Downloads
- 67
- Published
- Mar 15, 2026
- Updated
- Mar 16, 2026