Twitter (X) Screenshot Generator
Twitter (X) Screenshot Generator produces creator, page and audience lists: social profiles, channels, pages and the people who engage with them. Columns include type, target link, profile link, capture mode, code, message.
Useful for influencer and community outreach; these are profiles, not street addresses.
The columns you get
| Column | What it holds |
|---|---|
| Type type | screenshot for a captured image, status for a failure/run message, runSummary for end-of-run totals. |
| Target link targetUrl | The Twitter/X post or profile URL that was captured |
| Profile link profileUrl | The profile URL when a profile was captured |
| Capture mode captureMode | postCard, thread, profileHeader (header only) or fullProfilePage (loaded preview) |
| Code code | Typed failure code: not_found, protected, deleted, login_wall, wrong_author, wrong_target, selector_miss, media_error, browser_crash, network_error, invalid_input or capture_error |
| Message message | Human-readable failure message |
| Billable billable | True only for captured screenshot rows; status and summary rows are not billable |
| Access state accessState | public, protected, deleted, not_found or login_wall |
| Requested link requestedUrl | The input URL as requested, when the canonical URL differs |
| Canonical link canonicalUrl | The canonical X URL X actually served |
| Effective scale effectiveScale | Actual image pixels per CSS pixel (image width / clipped CSS width) |
| Preview limited previewLimited | True when a profile capture hit the logged-out preview cap |
| Preview limit reason previewLimitReason | Why the profile capture is a preview rather than the full timeline |
| Thread thread | Thread capture details: focalIndex, threadAuthor, threadLength, threadParts, gateIndex, threadComplete, truncatedReason (non_author_reply, gate, max_height, dpr_height_limit or no_parts) |
| Thread id threadId | Focal post id for a thread capture |
| Captured post count capturedPostCount | Posts rendered in the profile capture |
| Profile post count profilePostCount | Post count shown in the profile header |
| Requested requested | Targets requested in the run |
| Captured captured | Screenshots captured in the run |
| Failed failed | Targets that failed with a typed status code |
| Skipped skipped | Inputs dropped during validation |
| Billable screenshots billableScreenshots | Number of captured, billable screenshots in the run |
| Failure codes failureCodes | Count of each typed failure code |
| Invalid inputs invalidInputs | Inputs dropped during validation with a reason |
| Total bytes totalBytes | Combined size of all captured images |
| Width width | Width of the captured image in pixels |
| Height height | Height of the captured image in pixels |
| Filename filename | File name of the screenshot in the key-value store |
| Download link downloadUrl | Public signed HTTPS URL to download the screenshot file (omitted for local file:// URLs and when signing fails) |
| Captured at capturedAt | ISO timestamp when the screenshot was taken |
| Tweet id tweetId | Numeric post id (when Include post/profile details is on) |
| Tweet link tweetUrl | Canonical post URL (when Include post/profile details is on) |
| Author username authorUsername | Post author handle (when Include post/profile details is on) |
| Text snippet textSnippet | First characters of the post text (when Include post/profile details is on) |
| Poll poll | Poll choices, percentages, vote total and finality when X renders or syndicates poll data (when Include post/profile details is on) |
| Community note communityNote | Readers-added-context note id and text when X shows one (when Include post/profile details is on) |
| Username username | Profile handle (when Include post/profile details is on) |
| Name name | Profile display name (when Include post/profile details is on) |
| Followers followers | Follower count (when Include post/profile details is on) |
| Following following | Accounts followed (when Include post/profile details is on) |
What it costs
- 100 rows in one run$0.50
- 1,000 rows in one run$1.39
- 10,000 rows in one run$10.30
Free-plan prices: $0.99 per 1,000 results plus a $0.40 start fee (4 GB run) per run, plus Apify platform usage at $0.20 per compute unit. The Free plan includes $5 a month (Apify pricing).
What you fill in
- Post urls
Posts to capture as clean post cards. Paste x.com or twitter.com links, bare numeric post IDs, profile links or bare usernames. Any input works in every list. - Tweet urls
Alias of X post links. Accepts tweet links, bare tweet IDs, profile links and bare usernames. - Profile urls
Optional. Profiles to capture. Paste profile links, bare usernames, post links or post IDs and the actor routes them to the right capture. Use capture mode to … - Capture mode
What to capture. Post links produce a single post card or a thread image; profile modes apply to profile links (and convert post links to the author profile). - Theme
Color theme for the screenshot. - Both themes
When on, every target is captured twice: once in dark and once in light. Files and rows are unique per theme (one screenshot row per theme) and the run summary… - Include evidence
Save a gzipped DOM snapshot and a JSON manifest to the key-value store for every capture, and add screenshotSha256, domSnapshotSha256, evidenceKey and manifest… - Full page
When on, the whole page is captured instead of just the post card or the visible profile header. - Hide replies
Hide reply posts so screenshots stay focused on original posts. - Include metadata
Add details to each row: post id, post URL, author handle, text snippet and the author's follower, following and post counts for posts; username, display name,…
Other creator, page and audience lists
- Bilibili Video Search, Ranking & Metadata Scraper
- Bluesky Posts, Profiles, Feeds & Threads Scraper
- Dailymotion Video Discovery by Topic & Channel
- DeviantArt Artwork Search, Gallery & Trending Feed
- Facebook Group Feed & Engagement Extractor
- Facebook Page & Profile Finder by Keyword or URL
- Facebook Page Photo Gallery & Engagement Scraper
- Facebook Political & Commercial Ad Transparency Extractor
- Facebook Post & Group Comment Thread Extractor
- Facebook Public Follower & Following Snapshot Tool
- Facebook Timeline Posts & Reel Transcript Extractor
- Hacker News Story, Comment & Karma Scraper
Questions
What does Twitter (X) Screenshot Generator cost?
$0.99 per 1,000 results on the Apify Store (Free plan), plus a start fee per GB of run memory and Apify platform usage: one run of 1,000 rows costs about $1.39 before platform usage. The Free plan includes $5 a month.
Do I need to code to use it?
No. You fill in a form on the Apify Store page, start the run and download the results as CSV, Excel or JSON. You need a free Apify account.
Is it a good fit for a business list?
Useful for influencer and community outreach; these are profiles, not street addresses.