Automated job applications & status tracking with LinkedIn, Indeed & Google Sheets
Apply to jobs automatically from Google Sheets with status tracking
Who's it for
Job seekers who want to streamline their application process, save time on repetitive tasks, and never miss following up on applications. Perfect for anyone managing multiple job applications across different platforms.
What it does
This workflow automatically applies to jobs from a Google Sheet, tracks application status, and keeps you updated with notifications. It handles the entire application lifecycle from submission to status monitoring.
Key features:
Reads job listings from Google Sheets with filtering by priority and status
Automatically applies to jobs on LinkedIn, Indeed, and other platforms
Updates application status in real-time
Checks application status every 2 days and notifies you of changes
Sends email notifications for successful applications and status updates
Prevents duplicate applications and manages rate limiting
How it works
The workflow runs on two main schedules:
Daily Application Process (9 AM, weekdays):
Reads your job list from Google Sheets
Filters for jobs marked as "Not Applied" with Medium/High priority
Processes each job individually to prevent rate limiting
Applies to jobs using platform-specific APIs (LinkedIn, Indeed, etc.)
Updates the sheet with application status and reference ID
Sends confirmation email for each application
Status Monitoring (Every 2 days at 10 AM):
Checks all jobs with "Applied" status
Queries job platforms for application status updates
Updates the sheet if status has changed
Sends notification emails for status changes (interviews, rejections, etc.)
Requirements
Google account with Google Sheets access
Gmail account for notifications
Resume stored online (Google Drive, Dropbox, etc.)
API access to job platforms (LinkedIn, Indeed) - optional for basic version
n8n instance (self-hosted or cloud)
How to set up
Step 1: Create Your Job Tracking Sheet
Create a Google Sheet with these exact column headers:
| JobID | Company | Position | Status | AppliedDate | LastChecked | ApplicationID | Notes | Job_URL | Priority |
|--------|---------|----------|--------|--------------|--------------|----------------|-------|---------|----------|
| JOB001 | Google | Software Engineer | Not Applied | | | | | https://careers.google.com/jobs/123 | High |
| JOB002 | Microsoft | Product Manager | Not Applied | | | | | https://careers.microsoft.com/jobs/456 | Medium |
Column explanations:
Job_ID: Unique identifier (JOB001, JOB002, etc.)
Company: Company name
Position: Job title
Status: Not Applied, Applied, Under Review, Interview Scheduled, Rejected, Offer
Applied_Date: Auto-filled when application is submitted
Last_Checked: Auto-updated during status checks
Application_ID: Platform reference ID (auto-generated)
Notes: Additional information or application notes
Job_URL: Direct link to job posting
Priority: High, Medium, Low (Low priority jobs are skipped)
Step 2: Configure Google Sheets Access
In n8n, go to Credentials → Add Credential
Select Google Sheets OAuth2 API
Follow the OAuth setup process to authorize n8n
Test the connection with your job tracking sheet
Step 3: Set Up Gmail Notifications
Add another credential for Gmail OAuth2 API
Authorize n8n to send emails from your Gmail account
Test by sending a sample email
Step 4: Update Workflow Configuration
In the "Set Configuration" node, update these values:
spreadsheetId: Your Google Sheet ID (found in the URL)
resumeUrl: Direct link to your resume (make sure it's publicly accessible)
yourEmail: Your email address for notifications
coverLetterTemplate: Customize your cover letter template
Step 5: Customize Application Logic
For basic version (no API access):
The workflow includes placeholder HTTP requests that you can replace with actual job platform integrations.
For advanced version (with API access):
Replace LinkedIn/Indeed HTTP nodes with actual API calls
Add your API credentials to n8n's credential store
Update the platform detection logic for additional job boards
Step 6: Test and Activate
Add 1-2 test jobs to your sheet with "Not Applied" status
Run the workflow manually to test
Check that the sheet gets updated and you receive notifications
Activate the workflow to run automatically
How to customize the workflow
Adding New Job Platforms
Update Platform Detection: Modify the "Check Platform Type" node to recognize new job board URLs
Add New Application Node: Create HTTP request nodes for new platforms
Update Status Checking: Add status check logic for the new platform
Customizing Application Strategy
Rate Limiting: Add "Wait" nodes between applications (recommended: 5-10 minutes)
Application Timing: Modify the cron schedule to apply during optimal hours
Priority Filtering: Adjust the filter conditions to match your criteria
Multiple Resumes: Use conditional logic to select different resumes based on job type
Enhanced Notifications
Slack Integration: Replace Gmail nodes with Slack for team notifications
Discord Webhooks: Send updates to Discord channels
SMS Notifications: Use Twilio for urgent status updates
Dashboard Updates: Connect to Notion, Airtable, or other productivity tools
Advanced Features
AI-Powered Personalization: Use OpenAI to generate custom cover letters
Job Scoring: Implement scoring logic based on job requirements vs. your skills
Interview Scheduling: Auto-schedule interviews when status changes
Follow-up Automation: Send follow-up emails after specific time periods
Important Notes
Platform Compliance
Always respect rate limits to avoid being blocked
Follow each platform's Terms of Service
Use official APIs when available instead of web scraping
Don't spam job boards with excessive applications
Data Privacy
Store credentials securely using n8n's credential store
Don't hardcode API keys or personal information in nodes
Regularly review and clean up old application data
Ensure your resume link is secure but accessible
Quality Control
Start with a small number of jobs to test the workflow
Review application success rates and adjust strategy
Monitor for errors and set up proper error handling
Keep your job list updated and remove expired postings
This workflow transforms job searching from a manual, time-consuming process into an automated system that maximizes your application efficiency while maintaining quality and compliance.
By VipinW