Get Started
Screenshot of n8n workflow
FREE TEMPLATE
Sync Linear to Google Sheets Issue Reporting
8
Views
0
Downloads
14
Nodes
Download Template
Free
Preview Template
Utility Rating
6 / 10
Business Function
Operations
Automation Orchestrator
n8n
Integrations
Linear
Google Sheets
Trigger Type
Schedule
Approx setup time ≈ 35 min
Need help setting up this template?
Ask in our free Futurise community
About
Community
Courses
Events
Members
Templates

How to Sync Linear to Google Sheets Issue Reporting?

Leon Petrou
FREE TEMPLATE
Sync Linear to Google Sheets Issue Reporting
8
Views
0
Downloads
14
Nodes
Download Template
Free
Preview Template
Utility Rating
6 / 10
Business Function
Operations
Automation Orchestrator
n8n
Integrations
Linear
Google Sheets
Trigger Type
Schedule
Approximate setup time ≈ 35 minutes
Need help setting up this template?
Ask in our free Futurise community

Description

Pull your team’s issues from Linear into Google Sheets every morning. Leaders get a simple sheet they can sort and filter for standups, sprint planning, and status reports. No more manual exports.

A daily schedule starts the run, then a GraphQL request gets issues for a chosen team. The flow checks for more pages and loops with the end cursor until all issues are loaded. Items are split into single rows, labels are turned into a clean comma list, and a default estimate of 1 fills any missing values. A small code step flattens nested fields so columns are simple. Finally, the Google Sheets node writes the data with automatic mapping, so you only need the id column in the sheet.

Set up needs a Linear API key and Google Sheets OAuth. Update the team name in both GraphQL nodes, pick your spreadsheet and tab, and confirm the schedule time. Expect faster reporting, fewer errors, and a ready-to-use sheet for backlog review and ops reporting. Ideal for product managers, engineering leads, and operations teams that want a daily, reliable source of truth.

Copy link

Tools Required

n8n
Sign up
$24 / mo or $20 / mo billed annually to use n8n in the cloud. However, the local or self-hosted n8n Community Edition is free.
Linear
Sign up
Free: $0 / mo, includes API access (2 teams, 250 issues)
Google Sheets
Sign up
Free: $0 (Google Sheets API usage has no additional cost; quota limits apply)

What this workflow does?

  • Daily schedule at a set time to refresh the sheet without manual work
  • GraphQL query filters issues by team name for focused reporting
  • Cursor based pagination uses hasNextPage and endCursor to fetch all pages
  • Split array of issues into single rows for clean sheet output
  • Set default estimate to 1 and turn labels into a simple comma list
  • Code step flattens nested fields so columns are easy to filter and sort
  • Google Sheets automatic mapping adds columns based on incoming fields
  • Simple team filter updates in both GraphQL nodes to switch data sources

What are the benefits?

  • Reduce manual export work from 30 minutes to 2 minutes each day
  • Improve data accuracy by removing copy and paste errors by up to 95 percent
  • Handle large backlogs with cursor paging so volume does not slow reporting
  • Connect Linear and Google Sheets so teams can work in tools they know
  • Create a consistent daily report that supports standups and planning

How to set this up?

  1. Import the template into n8n: Create a new workflow in n8n > Click the three dots menu > Select 'Import from File' > Choose the downloaded JSON file.
  2. You'll need accounts with Linear and Google Sheets. See the Tools Required section above for links to create accounts with these services.
  3. Create a Linear API key in your Linear account under API settings. Keep it secure.
  4. In n8n, open the GraphQL nodes and in the 'Credential to connect with' dropdown, click 'Create new credential' and choose HTTP Header Auth. Add a header named Authorization with your Linear API key as the value, then save.
  5. Open both GraphQL nodes and update the variables to use your team name in the filter. Keep the endpoint as https://api.linear.app/graphql.
  6. Run the first GraphQL node once to confirm you see data with issues, pageInfo, and nodes in the output.
  7. In the n8n credentials manager, create a new Google Sheets OAuth2 credential. Follow the on screen steps to sign in and allow access. Give the credential a clear name.
  8. Create or select a Google Sheet and add one header column named id on the target tab.
  9. Open the Google Sheets node and select your Google account, spreadsheet, and sheet tab. Turn on automatic mapping so fields create columns as they appear.
  10. Review the Set node to adjust custom values like default estimate or label formatting if needed.
  11. Check the Schedule Trigger node and set the time that fits your timezone and reporting needs.
  12. Execute the workflow once manually to populate the sheet. Confirm rows were added and columns match the fields you expect.
  13. If no rows appear, ensure the sheet is owned or shared with the Google account you connected, and verify the Split Out node points to data.issues.nodes.
  14. If only the first page loads, check the If node condition and the end cursor path in the Set node. The loop should run until hasNextPage is false.

Need help or want to customize this?

Similar Templates

n8n
Operations
Sync Linear and Productboard Roadmap Updates
Keep your roadmap tools in step without manual work. When a project changes in Linear, the matching feature in Productboard gets the right status and timeframe, and your team gets a clear Slack update. Product and operations teams use this to keep plans aligned and reduce miscommunication. Two Linear event triggers watch two different projects. The flow extracts the project URL and ID, looks up Productboard features by a custom field, and splits the results to process each feature. A code node translates the Linear status to a Productboard status. The workflow fetches feature details, merges the data, checks if an update is needed, and then sends a PATCH request to set status and monthly timeframe when a target date exists. After the update, a Slack message posts the feature name, status, dates, and link. Batching and a small delay protect your rate limits. To set it up, you need a Productboard custom field that stores the Linear project URL, API access for Productboard, Slack credentials, and Linear access. Map your local status names in the code node. Set the Productboard custom field ID in the lookup request. Expect fewer status sync tasks, faster updates, and better visibility for planning, reviews, and leadership check ins.
5 views
view
n8n
Operations
Automate Notion to Linear Issue Creation
Turn Notion to do items into clear, assigned issues in Linear. Teams collect work in Notion and send it to Linear with titles, assignees, and full descriptions. Great for product, design, and operations teams that need a clean intake path. A simple form starts the run by asking for your Linear team name and a Notion page or block URL. The flow looks up the Linear team with GraphQL and stops with an error if the team is not found. It pulls unchecked to do blocks from Notion, loops through them, and reads the first line to set the assignee and title. If the title is too long, an AI step trims it. The content from nested blocks is converted to Markdown and merged into one description. The issue is created in Linear, the issue URL is fetched, and the Notion block is patched to include a link back to the new issue. You will need Notion, Linear, and an OpenAI API key. Share the Notion page with your integration and keep each task as an unchecked to do block. Most teams cut intake time from an hour to a few minutes when moving dozens of items. Good for design reviews, bug triage, internal requests, and content pipelines.
5 views
view
See More Templates

These templates were sourced from publicly available materials across the web, including n8n’s official website, YouTube and public GitHub repositories. We have consolidated and categorized them for easy search and filtering, and supplemented them with links to integrations, step-by-step setup instructions, and personalized support in the Futurise community. Content in this library is provided for education, evaluation and internal use. Users are responsible for checking and complying with the license terms with the author of the templates before commercial use or redistribution.Where an original author was identified, attribution has been provided. Some templates did not include author information. If you know who created this template, please let us know so we can add the appropriate credit and reference link. If you are the author and would like this template removed from the library, email us at info@futurise.com and we will remove it promptly.