Set up an S3 event to trigger your Lambda function, but nothing happens? I’ve run into that too.
I put together a quick guide to help you troubleshoot the issue. It walks you through everything from checking S3 event config to verifying Lambda permissions.
1️⃣ Double-check Your S3 Event Notification
- Go to your bucket → Properties → Event Notifications.
- Is the event (like
s3:ObjectCreated:*
) actually set up and pointing to your Lambda? If not, that’s step one.
2️⃣ Check Lambda’s Execution Role
- Got to IAM → Roles → Look for the one attached to your Lambda.
- It should have
AWSLambdaBasicExecutionRole
and permissions to read S3 if needed.
3️⃣ Do a Quick Upload Test
- Upload a test file to your S3 bucket.
- Then head to CloudWatch Logs and see if anything got triggered.
- If the logs are quiet, something’s off with the trigger.
4️⃣ Check Lambda’s Resource Policy
- Got to Lambda → Configuration → Permissions.
- Make sure S3 has permission to invoke your function. Here’s a sample you should see:

5️⃣ Recreate the S3 Notification (Yes, Really)
- Sometimes just deleting and recreating the event fixes everything.
- Don’t forget to click “Save changes”—super easy to overlook.
Bonus Tip: Use test events in the Lambda console or AWS CLI to simulate the S3 event and see if your function is wired up right.

Leave a Reply